我们不能创建一个内部类向量作为外部类的成员,并且只有一个外部类的对象可以将内部类对象的许多实例推送到该向量中吗?。
Outer
现在我的要求是为Inner
创建一个对象,我想将许多innerList
个对象推送到向量Inner
。我的问题是只有在创建Outer
类时才能创建Inner
类对象。因此,每当我想创建一个Outer
类对象时,都会有一个Outer
类对象与之关联。但是我想要一组Inner
个对象,它们对于一组{{1}}个对象是通用的。任何想法如何实现?
答案 0 :(得分:2)
这是你想要实现的目标:
#include <vector>
class Outer{
public:
class Inner{
};
std::vector<Inner> innerList;
};
int main()
{
Outer object;
object.innerList.push_back(Outer::Inner());
return 0;
}
答案 1 :(得分:0)
我认为您可以使用c ++的其他功能来实现您的目的:与“内部”相关联的“外部”。 例如,你可以使用“map”lisk这个:
class Outer{
};
class Inner{
};
map <Outer, vector<Inner>> &;
希望这会有所帮助。