gpt4 book ai didi

C#:指定一个函数arg必须继承自一个类,并实现一个接口(interface)?

转载 作者:行者123 更新时间:2023-11-30 19:03:52 25 4
gpt4 key购买 nike

我正在制作一个游戏,其中每个 Actor 都由一个 GameObjectController 表示。可以参与战斗的游戏对象实现ICombatant。如何指定战斗函数的参数必须继承自 GameObjectController 并实现 ICombatant?或者这是否表明我的代码结构不佳?

public void ComputeAttackUpdate(ICombatant attacker, AttackType attackType, ICombatant victim)

在上面的代码中,我希望attackervictim继承自GameObjectController并实现ICombatant。这在语法上可能吗?

最佳答案

我想说这可能表明您可以以某种方式进行重组,例如,拥有一个攻击者和受害者继承自的 Combatant 基类,该基类继承自 GameObjectController 并实现 ICombatant。

但是,您可以做类似的事情

ComputeAttackUpdate<T,U>(T attacker, AttackType attackType, U victim)
where T: ICombatant, GameObjectController
where U: ICombatant, GameObjectController

虽然我可能不会。

关于C#:指定一个函数arg必须继承自一个类,并实现一个接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2534750/

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