Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何使用类指针(STL)初始化向量_C++_Vector_Stl - Fatal编程技术网

C++ 如何使用类指针(STL)初始化向量

C++ 如何使用类指针(STL)初始化向量,c++,vector,stl,C++,Vector,Stl,只是想知道如何用类pointe初始化向量 # include <animation> // a class std::vector<animation*> animlist; animlist = new std::vector<animtion*>(); #包含//一个类 std::矢量动画列表; animlist=new std::vector(); 但它显示错误“error C2678”您的向量不是指针,它已在此处初始化: std::vector&l

只是想知道如何用类pointe初始化向量

# include <animation> // a class
std::vector<animation*> animlist;
animlist = new std::vector<animtion*>();
#包含//一个类
std::矢量动画列表;
animlist=new std::vector();

但它显示错误“error C2678”

您的向量不是指针,它已在此处初始化:

std::vector<animation*> animlist; // size 0 vector of animation pointers
std::vector animlist;//动画指针的大小为0矢量

下一行中的操作是尝试将指向
std::vector
的指针分配给
animlist
。这不起作用,因为向量没有一个赋值运算符,该运算符将指针指向同一类型的向量。

您的向量不是指针,并且已在此处初始化:

std::vector<animation*> animlist; // size 0 vector of animation pointers
std::vector animlist;//动画指针的大小为0矢量

下一行中的操作是尝试将指向
std::vector
的指针分配给
animlist
。这不起作用,因为向量没有一个赋值运算符,该赋值运算符接受指向相同类型向量的指针。

您不初始化向量。向量是一个容器。你申报后就可以走了。初始化对象,并将其推送到容器中

不初始化向量。向量是一个容器。你申报后就可以走了。初始化对象,并将其推送到容器中

谢谢,但我还是不能把物品推到它上面吗?animlist.push_back(anim)//动画的anim对象class@juanchopanza:s/指向
动画列表的指针
/指向
动画的指针
/@sink:这并不奇怪。
动画和指向动画的指针是不同的类型<代码>动画列表。向后推(&anim)
可能会起作用(
&
是“address of”操作符,它会返回一个指针),尽管从长远来看它几乎肯定不会做您想要的事情。它开始听起来好像你需要钻到对象和指针之间的差异。谢谢,我只是盯着C++,所以还有很长的路要走,这就是我试图做的无效SpRITE::Addio动画(const动画和ANIM){动画列表。PuxFuffBead(ANIM);} Sunk:那么,更有可能的是,就是你想要一个
std::vector
。不要只是为了好玩而乱搞指针。:)<代码> STD::向量将做正确的事情,只要你的<代码>动画< /Cord>类知道如何复制自己…这是C++程序员开始钻的那些基本的东西之一。谢谢,但是我仍然不能把项目推到它上面吗?animlist.push_back(anim)//动画的anim对象class@juanchopanza:s/指向
动画列表的指针
/指向
动画的指针
/@sink:这并不奇怪。
动画和指向动画的指针是不同的类型<代码>动画列表。向后推(&anim)
可能会起作用(
&
是“address of”操作符,它会返回一个指针),尽管从长远来看它几乎肯定不会做您想要的事情。它开始听起来好像你需要钻到对象和指针之间的差异。谢谢,我只是盯着C++,所以还有很长的路要走,这就是我试图做的无效SpRITE::Addio动画(const动画和ANIM){动画列表。PuxFuffBead(ANIM);} Sunk:那么,更有可能的是,就是你想要一个
std::vector
。不要只是为了好玩而乱搞指针。:)<代码> STD::向量将做正确的事情,只要你的<代码>动画< /Cord>类知道如何复制它自己…这是C++程序员在早期钻出来的基本事物中的另一个。