gpt4 book ai didi

c# - 增强 C# Enum 以使用按位运算?

转载 作者:太空宇宙 更新时间:2023-11-03 17:09:43 29 4
gpt4 key购买 nike

二元运算非常有用。这样我就可以做 | ^ & 为了发出一个新的序列。

但是,有时 Enum 没有附加 base 2 值(或根本没有值(value))。

即:

enter image description here

我想增强||推导||将 值附加到每个条目的枚举(如果可能)。

所以我将能够做到:

if (MyListItemType== Header |Footer ) ...

这可能吗?还是有任何棘手的解决方法?

最佳答案

I would like to Enhance || derive|| attach values to the Enum ( if posssible ) to each entry.

你不能那样做(除非重新定义枚举)。但是当它在你不拥有的代码中时,它就结束了。可能已经存在依赖编号的代码,更改 int 值会破坏该代码。

但这通常意味着 Enum 不是一个位集,所以尝试将它用作一个可能不是一个好主意。

这是代码创建者的设计决定。

查看您的示例列表:

var item = ListItemType.Header | ListItemType.Footer | ListItemType.SelectedItem;

item 真的可以同时作为页眉、页脚和选定项吗?这是互斥选项的列表。

关于c# - 增强 C# Enum 以使用按位运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10010257/

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