집 > Q&A > 본문
using namespace std;class text{public:
1
2
3
<code>text(int m,int n): a(m),b(n){}
int a;
int b;</code>
};
int main(){
<code>**text *p=new text[2]**;/*用p指向创建的对象数组*/
<code>**text *p=
new
text[2]**;
/*用p指向创建的对象数组*/
...
return 0;</code>
return
0;</code>
}
尝试用以上代码用new创建一个对象数组,发现不行,是哪里不对吗?为什么用new又可以为结构体创建对象数组?
迷茫2017-04-17 12:59:50
加个无参数的构造函数试试text(){}
text(){}
阿神2017-04-17 12:59:50
同意Dappur的回答,你在类中并没有定义默认构造函数。你的new text[2]语句实际上被编译器改成了new text()[2],它找不到就报错了。相信编译器的错误也是这样说的。