亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

非唯一枚舉值

非唯一枚舉值

C#
守候你守候我 2019-10-21 12:37:09
我試圖掩蓋edi文件上的索引位置...根據情況,我可能會在索引上放置2或3個東西。使用一個枚舉隱藏“幻數”會很酷,并且驚訝地看到您可以將多個枚舉分配給相同的值,如下所示:public enum Color{    Red = 1,    Blue = 1,    Green = 1}編譯器對此很滿意。我沒想到這行得通。我不需要回退到枚舉,因此我不必擔心嘗試返回,但這聽起來很時髦。為什么CLR允許枚舉有多個值,我應該為此使用結構嗎?(一個結構似乎比枚舉更重,這似乎行得通)
查看完整描述

3 回答

?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

那是完全合法的C#。從C#語言規范版本4.0,第14.3節:


多個枚舉成員可以共享相同的關聯值。這個例子


enum Color 

{

   Red,

   Green,

   Blue,

   Max = Blue

}

顯示一個枚舉,其中兩個枚舉成員Blue和Max具有相同的關聯值。


查看完整回答
反對 回復 2019-10-21
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

相同的數值但名稱不同,別無其他??赡苁抢?/p>


public enum Color

{

   DefaultColor = 1,

   Red = 1,

   Blue = 2

}

在某些情況下可能有意義,但在很多情況下卻沒有意義。當您將這些值解析回并調用colorValue.ToString()時,您將獲得最后一個作為字符串化值的值(在本例中為Red),但是您將失去默認顏色的概念,因為這是同一回事。至少以您建模數據的方式。如果要將其分開,則對不同的內容使用不同的值。


查看完整回答
反對 回復 2019-10-21
  • 3 回答
  • 0 關注
  • 281 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號