这是我的问题:我正在使用两个不同的类 A 和 B。A 类包含一个指向 B 类型对象的指针向量,我想在函数 myfunc 中使用这个向量,它是 A 的成员。这里是一个例子
class B {
public:
int x, y;
float z;
// other class members...
};
class A {
public:
// other class members...
vector <B*> myvect;
float myfunc() {
for(size_t i = 0; i < myvect.size(); ++i) cout << myvect[i] -> x << endl;
// rest of the code...
return (some float)
}
};
该程序无法编译。它返回一个错误,指出 B 是未定义的类型。只有当我注释掉 cout 语句时它才会编译。我搜索了互联网并尝试了几件事,比如将 i 声明为迭代器并取消引用迭代器,但没有任何效果。任何想法这段代码有什么问题?