gpt4 book ai didi

C# 覆盖枚举

转载 作者:太空宇宙 更新时间:2023-11-03 20:30:37 25 4
gpt4 key购买 nike

我知道以前可能有人问过这个问题,但我似乎找不到合适的解决方案(考虑到我不是 C# 专家,而是中级用户)...

我准备了一个基类,包括一个枚举 (AnimationStates),用于我的屏幕对象可能具有的动画状态(例如,士兵可能有不同的状态,而鸟可能有另一组状态..)..基类是服务于为我的动画屏幕对象存储更新方法和其他东西的目的(比如以相同的方式对所有这些对象进行动画处理)...基类中的枚举(自然)内部是空的..我有使用枚举编写的方法成员……

如果我通过“public new enum...”在我的子类中定义枚举,我可以“继承”它......对吗?此外,有趣的是,我在基类中有一个字典,我试图将它从一个 child (即士兵或鸟)传递给它的基类(动画对象)......但我不能..

我觉得我做错了什么或遗漏了什么。有什么想法吗?

最佳答案

嗯,您不能在 C# 中直接使用枚举。

我会建议采用更多面向对象的方法,并用真实对象替换枚举。通过这种方式,您可以在基类中定义一个接口(interface) IAnimationState,并添加一个抽象方法 getAnimationState()。在屏幕对象类中,您只需实现此方法,返回接口(interface) IAnimationState 的一些特定实现。通过这种方式,您可以将一些逻辑放入小的动画状态类中,使您的项目更加模块化。

关于C# 覆盖枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7747539/

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