new int[]创建动态整型数组,[]内的数字决定数组大小;new int()用来动态创建整型数。
int* pt1 = new int[3]; //pt1指向一个长度为3的整型数组
pt1[0] = 10;
pt1[1] = 20;
pt1[2] = 30;
cout << "pt1[0]的值为:" << pt1[0] << endl;
cout << "pt1[1]的值为:" << pt1[1] << endl;
cout << "pt1[2]的值为:" << pt1[2] << endl;
int* pt2 = new int(3); //pt2指向一个值为3的整形数
cout << "*pt2的值为:" << *pt2 << endl;
输出结果如下:
ps:静态创建,声明的变量保存在栈中,作用域结束后变量被释放,比如函数中定义的局部变量在函数运行结束后内存会被释放;动态创建的变量保存在堆中,作用域结束后变量内存不会被释放,要手动释放,比如函数中动态创建的数组在函数运行结束后内存不会自动被释放。