提问人:user3844416 提问时间:10/31/2023 更新时间:10/31/2023 访问量:43
将子类转换为父类似乎将对象保留为子类
Casting a child class to a parent class seems to keep the object as the child class
问:
我有两个类,Parent 和 Child。 实例 myParent 和 myChild
Child 的属性比 Parent 多一些。我需要通过将子实例强制转换为父类来从子实例中删除这些额外的属性。
我正在使用 ShallowCopy 方法将 myChild 实例的状态复制到 myParent 实例中。
当我投的时候
myParent = new Parent();
myParent=((Parent)myChild).ShallowCopy();
然后
Debug.Print($"The myParent class is class'{myParent.GetType()}'");
我发现myParent类实际上是一个Child类!我不明白为什么。如果有人能解释原因,我将不胜感激。谢谢!
答: 暂无答案
上一个:转换嵌套 stl 容器内的值
评论
class Child : Parent
ShallowCopy
Object.MemberwiseClone
myParent = new Parent(myChild);