2011-07-06 95 views

回答

47

C#operators have to be static。根據定義,接口適用於實例。沒有機制來要求類型實現靜態方法。

+0

想到擴展方法,但擴展方法不能用作操作符或屬性。 –

+0

但是,有沒有一個原因,接口不能增強以包含靜態方法和運算符? – cordialgerm

+3

@pickles - 語言/編譯器不能創建這樣一個結構沒有硬性和快速的原因(我認爲實際上可能有一些東西 - Delphi也許可以,並且可以在某種程度上被模仿(靜態虛擬方法至少)在C++中使用模板(T :: Method())) - C#選擇不。 – dkackman