内存使用习惯

 

 1 先申请再使用,不要在申请内存之前使用

 

  1.  char *p ;
  2.  memcpy(p,"asdf",strlen("asdf"));//出错
  3.  return p;

2 申请了内存,检查是否申请成功

 

  1. char *p = new char[size];
  2. if(p == NULL)
  3. {
  4. }

3 做参数使用时,检查是否为空

  1. void f(char *p)
  2. {
  3.     if(p == NULL)
  4.     {
  5.     }
  6. }

4 使用时,防止越界,常发生在数组的使用上

5 使用完之后必须释放

6 防止重复释放同一块内存

7 new申请的需delete释放,malloc申请的free释放,注意[]delete 和 delete使用的差别(数组和个体)

8 释放后记得把指针置为NULL,防止野指针

  1. delete p;
  2. p=NULL;

 

 

 

 

你可能感兴趣的:(null,delete)