考慮從.NET 4.0庫下面的代碼片段:顯式地初始化構造函數中私有字段的默認值.. WTF?
private T[] array;
private static T[] emptyArray;
private int size;
private int version;
static Stack()
{
Stack<T>.emptyArray = new T[0];
}
public Stack()
{
array = Stack<T>.emptyArray;
size = 0;
version = 0;
}
是否有背後的初始化值類型的私有字段默認值(在本例中size
和version
以上)的任何理由明確地比公司的編碼標準等?