有人可以帮我铸造吗?我有两节课;其中之一是mobileObject和其他PlantMO。 movingObject是我的基类,而plantMO是从其派生的。首先,我将PlantMO强制转换为可移动对象,以将所有可移动对象保持在同一区域。之后,当我使用其中之一时,我对其进行了重铸,但其(PlantMO's)成员的价值损失了。

我的问题是;如何在不丢失成员的情况下重铸它?

最佳答案

在没有看到您的代码的情况下,我无法确切地告诉您您需要做什么,但是您需要使用指针或引用,就像这样(注意,我没有尝试编译此代码,这只是一个抽象示例)。

class A {
}

class B : A {
}

main () {
 B& refB = new B();
 SomeFunction(refB);
}

void SomeFunction(A& aRefToA) {
 // Call functions of A.
}

09-04 17:18