【C++】编程小结① -- new和delete

new 和 delete 使用的疏忽

1.谨记格式:指针所指对象数据类型* 变量名 = new 数据类型(初始化变量值,可省略);
int* val = new int;//val 指向一个没有初始化的int型对象(int是内置数据类型,不会初始化)
int* val = new int();//val 指向一个初始化为0的int型对象
int* val = new int(3);//初始化为3
【犯过错!】int* val = new int[];//val指向一个元素为int类型的数组(数组里的元素没有初始化)
int* val = new int[]() ; //val指向一个元素为int类型的数组且数组里的元素都被初始化为0

千万要注意小括号和中括号的区别!里面的内容是不同含义,不要混用!

2.delete要注意指针所指向的类型!
指向单个元素的直接用 【delete 指针名;
指向数组的要用【delete [] 指针名;

调用成员函数的疏忽

用get函数获得私有成员的值得时候,记得加上空括号!这是一个函数啊!!
例如【string name = getName();】不要再因为这个错了!!

编写头文件的疏忽

编写头文件的时候养成好习惯,写上
#ifndef“xxxxx.h”
#define“xxxxx.h”
#endif
不然可能出现重定义!

你可能感兴趣的:(编程)