2013-07-23 131 views
0

只是想知道來初始化類足尖矢量如何初始化類的指針(STL)

# include <animation> // a class 
std::vector<animation*> animlist; 
animlist = new std::vector<animtion*>(); 

,但它顯示錯誤「錯誤C2678」矢量

回答

3

您的載體不是指針,並且已經被初始化的位置:

std::vector<animation*> animlist; // size 0 vector of animation pointers 

您在下一行做的是一個指針試圖分配std::vector<animaiton*>animlist。這不起作用,因爲一個向量沒有一個賦值操作符,它將一個指針指向同一類型的向量。

+0

謝謝,但我仍然無法將物品推送給它? animlist.push_back(anim)//動畫類的動畫對象 – sank

+0

@sank你可以將指針指向'動畫'。 – juanchopanza

+1

@juanchopanza:s /指向'animlist' /指向'動畫'的指針/ – cHao

0

你不初始化一個向量。矢量是一個容器。當你宣佈它時很好。您初始化一個對象,並將其推送到容器。