簡體   English   中英

將值分配給結構值類型

[英]Assign a value to a struct value-type

我希望能夠創建一個結構,並像普通的內置結構一樣使用它。 例如,假設我決定Bool也應該有一個FileNotFound值(作為一個愚蠢的例子!),所以我創建了一個結構來包含該值-要在代碼中將其用作普通結構,將需要什么?分配給它),如bool b = true; 或b = FileNotFound;

布爾是一個結構,對嗎? 您可以使用其他內置函數執行此操作:int i = 32; 或字節b = 123;

我要自己做! 任何人有任何想法...?

干杯-理查德

您想要的是一個enum請參見此處

enum是可以用作類型的值的集合。

因此,您可以執行以下操作:

enum MyBool {True=1, False, FileNotFound};
MyBool b = MyBool.FileNotFound;

如果需要方法,請使用structenum請參見此處

public struct MyBool
{
   internal enum Values {True=1, False, FileNotFound};
   Values value;

   public MyBool(Values v) 
   {
      value = v; 
   }
}
MyBool b = new MyBool(MyBool.Values.FileNotFound);

僅當聲明新實例時(或使用其他方法使用該struct時),該structValues才可用。

您可能希望將struct中的value變量初始化為某種形式,因為該struct的構造struct仍然可以在沒有值的情況下調用。

通常,您不能在C#中執行這種操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM