gpt4 book ai didi

c++ - 使用派生类 C++ 方法的父类(super class)

转载 作者:行者123 更新时间:2023-11-28 05:01:11 24 4
gpt4 key购买 nike

<分区>

我有一个关于继承的问题。我的情况是这样的:

我有两个类(AThisWay、AThatWay),我希望能够不时交换它们。它们都有相同的方法名称,但在方法内部做不同的事情。它们的属性和方法被其他类使用 (B)。一开始我只有 AThisWay 并且它是 B 的父类(super class),但现在我也有 AThatWay 我想知道是否有可能使 AThisWay 和 AThatWay 成为 B 的子类,这样我就不会对属性感到困惑或者是否有是一种不时更改 B 的父类(super class)的方法。这方面的最佳做法是什么?

最佳神圣

编辑:现在我正在这样做(注意 B 仅派生自 AThisWay),但我希望 B 有时也能够使用 AThatWay 的方法。就像 AThisway 和 AThatWay 是我拥有的不同物理模型,我希望能够有时以这种方式进行微积分,有时以这种方式进行微积分,只是为了测试我的模型。我现在看到的最快的方法是复制 B 并从 AThatWay 派生它,但这当然不漂亮,也不容易调试。

class AThisWay { 
public:
int aNumber
void aMethod() { aNumber = 1; }
}

class AThatWay {
public:
int aNumber
void aMethod() { aNumber = 2; }
}

class B: public AThisWay{
public:
int anOtherNumber
void otherMethod()
{
aMethod();
anOtherNumber = aNumber + 2;
}
}

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