gpt4 book ai didi

C# - 如何以某种方式使用枚举标志

转载 作者:行者123 更新时间:2023-11-30 17:16:50 25 4
gpt4 key购买 nike

我想做的是:

[Flags]
public enum Actions
{
Action1 = 0x01,
Action2 = 0x02,
Action3 = 0x04
}

该对象的 Action 标志设置为 7。然后该对象可以执行任何可用的操作。但这是踢球者。该对象可以执行此组合中的操作:

- Action 一、 Action 二、 Action 三

- Action 一、 Action 一、 Action 三

- Action 1、 Action 1、 Action 2

- Action 1, Action 1, Action 1

因此,操作 2 和 3 只能使用一次,而操作 1 最多可以使用 3 次。如果使用Action 2 或Action 3,则Action 1 只能使用两次。这是最好的方法吗?或者我应该尝试创建一个新对象来处理这个问题吗?我想使用枚举来做到这一点,但我不能,在我的生活中,弄清楚如何做到这一点或在网络上找到任何关于这样的事情。

预先感谢您提供的任何帮助。

最佳答案

枚举只指向一个 Action 。如果您有操作组合,我可以建议一个集合来组织它们。

例子:

List<Actions> _actionCombos = new List<Actions>(3);

_actionsCombos.Add(Action.Action1);
_actionsCombos.Add(Action.Action1);
_actionsCombos.Add(Action.Action1);

这将是所有 1 的组合。听起来好像还有另一个变量决定了 Action 组合。因此,您可以为该值构建逻辑以返回正确的操作组合(如果存在)。

关于C# - 如何以某种方式使用枚举标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6918461/

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