C++使用Tips

C++指针使用Tips

  1. C++ delete指针后一定要设为NULL,防止出现野指针。
  2. 一个new对应一个delete,如果指针只是指向某些东西的话。
int a = 1;
int*p = &a;
delete p;

这个程序是会出错的!必须有new才能delete,一个new对应一个delete。

  1. C++ new一个对象和生成一个对象实例的区别。

对象生成示例可以显式声明,也可以隐式声明,隐式声明的时候

A a(1);
A a = A1

一个在堆里,一个在栈里,栈里因为有寄存器存着地址,而堆里需要从block里一个一个去找,二者在速度上差了很多,所以要在大量快速计算的时候,一定不能new,而且new还要自己管理内存。但栈的空间是有限的,所以权衡使用吧。

  1. 空指针delete的时候不会出错,但delete操作比if判断更加耗时。

猜你喜欢

转载自blog.csdn.net/fairyloycine/article/details/88095504