gpt4 book ai didi

c++ - 在 C++ 中公开成员变量方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:10:43 26 4
gpt4 key购买 nike

我有一个简单的 Object-Components设计。像这样的东西:

class Object1 : public Object
{
Component1 _comp1;
Component2 _comp2;
...
ComponentN _compN;
};

是否可以公开为 public: Objects1 的方法来自 ComponentK 的一些方法无需在 Object1 中创建方法在内部调用 ComponentK方法?

我需要一种简单的方法来执行此操作,因为每次我想公开一些 ComponentK 时都编写一个函数非常烦人方法。

最佳答案

不直接,不。您可以使用私有(private)继承从组件继承而不是聚合它们(注意私有(private)继承不表示is-a),然后通过使用 发布它们的一些成员函数>。像这样:

class Object1 : public Object, private Component1, private Component2, ..., private ComponentN
{
public:
using Component1::function1();
using Component1::function2();
...
using ComponentN::functionM();
};

我并不是说这一定是最好的方式,但它是一种方式。

关于c++ - 在 C++ 中公开成员变量方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15894881/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com