我正在为项目编写模块,我希望界面尽可能简单。我想在构造它们时将对象存储在向量中。 也就是说,这正是我一直在尝试使用方法和独立函数的许多不同方式,使用静态声明,但没有一个工作;
vector<trialclass> vektor;
class trialclass {
public:
trialclass() {
vektor.push_back(*this);
}
}
非常感谢
答案 0 :(得分:0)
目前,您的代码无法编译。首先,课程最后需要一个分号
vector<trialclass> vektor;
class trialclass {
public:
trialclass() {
vektor.push_back(*this);
}
};
^^^
其次,vektor
的声明不知道trialclass
是什么。
这种重新安排解决了问题
class trialclass {
public:
trialclass();
};
std::vector<trialclass> vektor;
trialclass::trialclass() {
vektor.push_back(*this);
}
这样编译和“工作”的意思是vektor
最终会为每个trialclass
构建一个项目,但请注意这些是trialclass