【问题标题】:How to define an object from Class A in Class B如何在 B 类中定义 A 类的对象
【发布时间】:2012-11-26 14:23:06
【问题描述】:

我是 C++ 编程的初学者,我对如何将对象的类传递给另一个类有一个(我认为是愚蠢的)疑问。假设我们有这两个类:

class A {...}
class B {...}

我想使用一个从 A 到 B 的对象。例如:

class B {
    A ab;
    [methods prototypes that include the object ab]
    method_B (A ab); //for example

    ...
}

问题是,我可以这样做吗?考虑面向对象编程有意义吗?

或者,我可以在 main() 中定义一个 A 的对象,然后我会从 B 调用一个包含 A 的对象作为参数的方法?

我的问题是关于如何在不“违反”面向对象编程规则的情况下将另一个类中的对象使用到另一个类中(功能独立!)。

感谢您的帮助,

【问题讨论】:

  • 如果你已经有了A的实例,为什么method_B要把它作为参数呢?
  • 他可能有兴趣将本地实例与外部实例进行比较,为什么会出现问题?

标签: c++ class object


【解决方案1】:

你可以这样做。许多库和语言都这样做。从面向对象的角度来看,您需要设计 A 类,使其公开(公共)一个最小且有用的接口,但其他类(例如 B 类)除外。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-02
    • 2013-01-04
    • 1970-01-01
    • 1970-01-01
    • 2021-04-15
    相关资源
    最近更新 更多