gpt4 book ai didi

c++ - C++中的简单继承问题

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

我正在尝试正确理解 C++ 中的继承。

首先,拥有一个返回自身实例化的类是否可以?

class Class1 {
public:
Class1 foo();
}

基本上,我有一个派生方程的类,因此它接受一个方程并返回一个方程。

如果我想要 Class1 的一些子类也返回它们自己的实例:

class Child : public Class1 {
public:
Child bar();
}

我想使用 Class1 的一些功能,但我不想返回 Class1 的,而是想返回 Child 对象,这可以通过继承实现吗?

谢谢,希望这个问题不会太愚蠢。

最佳答案

写的没问题,但是你打算怎么用呢。返回by value涉及复制,复制和多态性一般不会去好在一起。通常(但也有异常(exception)),最好是返回指向新分配实例的指针。 (你必须解决如果你这样做,内存管理问题。如果逻辑意义类是这样的循环是不可能的,那么你可以使用std::shared_ptr;否则,您将不得不做其他事情。)

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

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