gpt4 book ai didi

c++ - 从 C++ 中的任意类继承?

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

是否可以设计一个继承自一组基类中的任何一个的类?我希望能够写出类似的东西:

class Derived : public ArbitraryBase {
public:
Derived () : ArbitraryBase () {}

...
};

其中 ArbitraryBase 可以是编译时确定的某个基类。我有一组基类,我想从中派生相同的类。有没有办法避免为每个基类编写单独的派生类?

最佳答案

如果真正在编译时确定,你可以让你的派生类成为模板:

template<class T>
class Derived : public T {
public:
Derived() {}

...
};

您稍后可以通过提供基类型创建实例化此类:

int main() {
Derived< ??? > my_object;

...
}

??? 是获取派生类型的一些编译时方法。

关于c++ - 从 C++ 中的任意类继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56871290/

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