假設我有可能被簡化爲C#的typedef /別名樣結構上的靜態類型
class A<T>
{
static void foo(T x) { }
}
要使用富一些相對複雜的通用對象,必須重複使用的類名與通用。
A<MyLongTypeNameIsNotFunToType>.foo(x);
這將是非常好的,如果有可能簡化這個:
alias AA = A<MyLongTypeNameIsNotFunToType>;
AA.foo(x);
我能想到的唯一的事情就是創建一個包裝類
class B : A<MyLongTypeNameIsNotFunToType> { }
,讓我通過B訪問A的靜態成員。一個問題是,這需要一個公共構造函數,在我的情況下,這是不可能的。很明顯,我可以將A的靜態成員包裝在B中,但看起來非常冗餘。
[我試過使用,但請注意,我需要訪問靜態成員,所以我需要靜態類型。使用似乎不適用於靜態類型。 錯誤:___是在給定的上下文中無效的類型]
任何優雅的解決方案?
在C#【別名關鍵字(如的typedef)的可能的複製? ](http://stackoverflow.com/questions/844651/alias-keyword-like-typedef-in-c) – Jannik
@Jannik號似乎人們沒有關注問題的* static *部分。 – AbstractDissonance
「,但請注意,我需要訪問靜態成員,所以我需要靜態類型」 - >你仍然可以使用「使用」。我想知道這在哪裏不起作用?這似乎是一個騙局,所以我很快刪除了我的答案。 – Tyress