0
寻找如何通过A最佳访问B类队列,但我收到了分段错误。此外,我正在寻找这两个班级之间沟通的最佳方式。在这种情况下访问器方法是否正常?什么设计模式可以工作?由于C++中的类数据成员之间的通信
class B {
public:
int get_int() { return qi.front(); }
void put_int(int i) { qi.push(i); }
private:
queue<int> qi;
};
class A
{
public:
void get_event() { cout << b->get_int() << endl; }
void put_event(int a) { b->put_int(a); }
private:
B *b;
};
int main() {
A a;
a.put_event(1);
return 0;
}
'A :: b'是一个包含随机垃圾的未初始化指针。您的程序展示未定义的行为。它从来没有实际创建一个'B'的实例。 –