我將api中的一串字符串轉換爲類。我廣泛使用編譯器來幫助我,因爲我可以替換核心API中的某些類型,並遵循類型錯誤。禁止字符串與對象連接
然而,有缺陷的這種方法令人沮喪的源:
// linqpad snippet
void Main()
{
var t = "yay : " + (new Foo());
t.Dump(); // "yay: namespace.Foo" instead of compilation error
}
class Foo {
}
C#將愉快地加在一起的字符串和任何用戶定義的對象。有沒有辦法將它變成警告或編譯錯誤?
我想要一個編譯錯誤,因爲這個數據最終會顯示給用戶。如果我錯過了一個連接,用戶會在應用程序中看到類名,這實際上並不是我想要的行爲。
寫愚蠢的代碼沒有任何警告! :) – DavidG 2014-12-03 09:25:43
爲什麼這必須是警告或錯誤? – Dennis 2014-12-03 09:28:09
@DavidG我處於重構狀態。我有50多個班級一起交流。我想用由一個類表示的一些其他數據替換由字符串表示的一些數據。在使用字符串連接的類中,我想使用其他形式的組合。如果編譯器不能幫助我,那意味着我可能會錯過一些東西,並且用戶會在應用程序中看到不相關的類名。 – Simon 2014-12-03 09:30:23