C++对象之间的通信
我确信以前已经问过(并回答过)这种问题,所以如果是的话,请将我链接到之前的讨论...
在 C++ 中,假设我有一个 ClassA 类型的对象,其中包含一个类型为私有成员变量的对象B 类。我将如何在 ClassB 中调用对 ClassA 对象的引用?
我正在使用观察者设计模式,其中 ClassA 对象是“主体”,而 ClassB 中的对象(例如 ClassC 类型)是 ClassA 对象的“观察者”。因此,当在 ClassB 中初始化对象 ClassC 时,其参数之一需要是对其“主题”对象的引用。
I'm sure this kind of question has been asked (and answered) before, so please link me to a previous discussion if so...
In C++, say I have an object of type ClassA which includes a private member variable object of type ClassB. How would I go about calling a reference to the ClassA object within ClassB?
I am using the Observer Design Pattern where the ClassA object is the 'subject' and an object within ClassB, say of type ClassC, is an 'observer' of the ClassA object. Therefore when initialising object ClassC within ClassB one of its parameters needs to be a reference to its 'subject' object.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
简而言之:
B 不能仅仅因为它是 A 的成员而获得对 A 的特殊访问权限。您必须显式传递引用。
Briefly:
B gets no special access to A just because it is a member. You must explicitly pass the reference.