#include
#include
using namespace std;
class A{
public:
int a;
int b;
string c;
A(int aa,int bb,string cc):a(aa),b(bb),c(cc){}
};
int main(){
vector vec;
vec.push_back(new A(123,111,"abcd"));
return 0;
}
测试没有问题,主要string str有问题,还有就是中文字符的分号之类的小错误,还有就是忘了写分号的小错误。
#include
A(int aa,int bb,string cc):a(aa),b(bb),str(cc){} //c改成str
vector vec; //这存的是类对象指针
vector vec; //这才是存类对象
vec.push_back(A(123,111,"abcd")); //添加对象
满意请采纳!
不是vector用法错了,是你其他的代码有问题;从你这半截代码,至少要确定以下几个问题:
1.有没有包含
2.有没有using namespace std;
3.你的class A写错了,成员名str,构造函数用的c(cc)。
4.检查你的标点符号是不是中文输入法。
A(int aa,int bb,string cc):a(aa),b(bb),c(cc){}
应该是
A(int aa,int bb,string cc):a(aa),b(bb),str(cc){}
吧