首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

new分配的时候,能否支持初始化参数列表?该怎么解决

2012-05-20 
new分配的时候,能否支持初始化参数列表?我发现可以用new来初始化普通的类型为0:int *pinew int[3]()这样

new分配的时候,能否支持初始化参数列表?
我发现可以用new来初始化普通的类型为0:

int *pi=new int[3]();
这样分配出来的pi的3个int都是0了。
但是我不能设定数值:

int* pi=new int[3](2); // VC2010提示说,“Target of operator new()”: 数组初始化需要大括号
提示语法错误。下面这样也不行,我想调用MyClass的构造函数(2,3)
MyClass* pm=new MyClass[5](2,3);

不行。C++11现在引入了初始化列表能做到这一点么?
谢谢!

[解决办法]
好像不能。至多就是你自己定义好默认构造函数吧。
[解决办法]
Class* pm=new MyClass(2,3);这样不久行了,如果想构造多个,就用指针数组存放

[解决办法]
循环 去构造吧。。。用数组存储就行了
[解决办法]
没戏了,不能像JAVA这么方便。
[解决办法]
new的数组初始化在后面的大括号里顺序指出,貌似数组成员是类的只能调用默认构造函数了

热点排行
Bad Request.