如果您使用初始化程序列表創建struct
,那麼您離開的成員是否會獲得已知的默認值?未初始化的結構成員是否保證有值?
public struct Testing
{
public int i;
public double d;
public string s;
}
Testing test = new Testing { s="hello" };
我發現在微軟暗示,但沒有說明明確這樣一個鏈接:Default Values Table (C# Reference)。
一個小測試程序顯示它不會產生編譯器錯誤併產生預期的結果。我知道比依靠簡單的測試來保證更好。 http://ideone.com/nqFBIZ