1
我有下面的類的數組:C++:創建對象
class student
{
int rol , marks;
char name[20];
public:
student(int r , int m , char n[])
{
rol = r;
marks = m;
strcpy(name,n);
}
int roll()
{
return rol;
}
};
,現在我試圖創建對象的這樣一個數組:
student a[]= {(1,10,"AAA"),(2,20,"BBB"),(3,30,"CCC")}; // I get the error on this line
但我收到此錯誤信息:
Error: testing.cpp(40,56):Cannot convert 'char *' to 'student[]'
當我這樣做:
student a(1,10,"AAAA");
student b(2,20,"BBBB");
student c(3,30,"CCCC");
student d[3]={a,b,c};
它完美的工作。
@WhozCraig Thx很多。這是解決我的問題:
我不得不數組初始化如下:
student a[]= {
student(1, 10, "AAA"),
student(2, 20, "BBB"),
student(3, 30, "CCC")
};
我最初的代碼是錯誤可能是因爲構造函數不能在同一時間創造超過1個對象。
1.'student :: student'的第三個參數應該是'const char n []',並且2.在'a []中用'}替換每個'('''''''''聲明。 – WhozCraig 2015-04-04 04:10:00
@WhozCraig當我這樣做時,我得到了大約10條錯誤消息 – 2015-04-04 04:13:22
[**看到它現場**](http://ideone.com/LWMd5w),並在你的問題中包括你正在使用的* exact *工具鏈* *。或者,您可以[也只是這樣做](http://ideone.com/pGfsww)。 – WhozCraig 2015-04-04 04:15:16