SA1125:UseShorthandForNullableTypes具有本說明書中(從4.7 StyleCop的設置編輯器應用程序截取):SA1125:爲什麼強制執行「int?」而不是「Nullable <int>」,但不在「typeof()」中?
強制使用空類型的速記而不是除外
typeof()
內的Nullable<T>
的。
是否有一個原因爲什麼它有typeof()
聲明的例外? typeof(int?)
編譯也很好 - 這只是StyleCop作者的偏好,還是有更深的理由?
編輯:自正式文件沒有提到這一例外,我測試了以下代碼:
var x = new Nullable<int>();
var y = new int?();
var z = typeof(Nullable<int>);
var v = typeof(int?);
結果:只有第一線提高了SA1125警告。
編輯2:The work item for StyleCop asking to fix this behavior
你在哪裏找到你所引用的描述?當然不在您提供的鏈接中,也不在[官方文檔]中(http://www.stylecop.com/docs/SA1125。HTML) – 2013-04-22 11:41:11
我會建議一個錯誤,或者錯過了一個要求。即使在'typeof()'中,ReSharper也會提示我將'Nullable'重寫爲'int?'。 –
2013-04-22 11:42:35
我在StyleCop設置編輯器工具中找到了描述。現在的問題是它是否準確... – 2013-04-22 11:43:11