c++ 用new动态申请数组初始化的问题
2016-03-21 16:46
597 查看
ref : http://www.cnblogs.com/mywebname/articles/2291540.html
注意括号的使用
注意:C++使用new和delete在堆(自由存储区)上分配和释放动态数组。
动态数组初始化:
1.元素只能初始化为元素类型的默认值,而不能像数组变量一样,用初始化列表为数组元素提供各不相同的初值。
2.对于内置数据类型元素的数组,必须使用()来显示指定程序执行初始化操作,否则程序不执行初始化操作:
int *pia = new int[10]; // 每个元素都没有初始化
int *pia2 = new int[10] (); // 每个元素初始化为0
3.类类型元素的数组,则无论是否使用(),都会自动调用其默认构造函数来初始化:
string *psa = new string[10]; // 每个元素调用默认构造函数初始化
string *psa = new string10; // 每个元素调用默认构造函数初始化
注意括号的使用
注意:C++使用new和delete在堆(自由存储区)上分配和释放动态数组。
动态数组初始化:
1.元素只能初始化为元素类型的默认值,而不能像数组变量一样,用初始化列表为数组元素提供各不相同的初值。
2.对于内置数据类型元素的数组,必须使用()来显示指定程序执行初始化操作,否则程序不执行初始化操作:
int *pia = new int[10]; // 每个元素都没有初始化
int *pia2 = new int[10] (); // 每个元素初始化为0
3.类类型元素的数组,则无论是否使用(),都会自动调用其默认构造函数来初始化:
string *psa = new string[10]; // 每个元素调用默认构造函数初始化
string *psa = new string10; // 每个元素调用默认构造函数初始化
相关文章推荐
- VC++动态链接库编程之MFC DLL
- C++ DLL导出类
- C++中cin输入类型不匹配解决方法
- 《C++ Primer》学习 之 const_cast使用
- “Accelerated C++” 阅读笔记(四)
- 【c++】计算工资
- 【c++】计算工资
- C++编译问题
- 排序算法-C++
- C++实现静态顺序表的增删查改以及初始化
- C语言中整型的定义
- 栈空间和堆空间
- 介绍C++11标准的变长参数模板
- 【c++】【2015华为笔试】分解字符串
- 【c++】【2015华为笔试】分解字符串
- C语言交换赋值函数
- C++中delete和delete[]的区别
- C++学习之路-开篇
- Java通过JNI调用C/C++
- C/C++拾起