在泛型中使用'T'有什麼理由嗎?它是某種縮寫嗎?據我所知,一切正常。例如爲什麼泛型經常使用T?
public G Say<G>(){ ... }
甚至
public Hello Say<Hello>(){ ... }
在泛型中使用'T'有什麼理由嗎?它是某種縮寫嗎?據我所知,一切正常。例如爲什麼泛型經常使用T?
public G Say<G>(){ ... }
甚至
public Hello Say<Hello>(){ ... }
T代表T ype。但這只是一個傳統,沒有什麼可以阻止你使用其他名字。例如,通用字典使用<TKey, TValue>
。
還有一個Microsoft guideline如果你有一個單一類型的參數,並與前綴描述參數名稱牛逼如果你有不止一個建議使用字母牛逼。這樣做可以在您的代碼中提供更一致的感受。
T代表類型,如 像你說的一切工作fine.But把噸那個地方提醒你,是通用型的。
哦,我有事情:)
我雖然是「這完全是岩石!」的T。 – 2008-12-17 10:02:19
思想t將其就像我的速記通常用於.NET接口,而在其他環境中C的有時用於類(Delphi使用此,IIRC )。
通常,「T」本身意味着「在此上下文中的單一類型參數」,並且如果您有多個類型參數,則它們會得到T前綴,例如, Dictionary<TKey, TValue>
。當你閱讀代碼時,它只是一個明顯的例子,它是一個類型參數,而不是具體的具體類型。
T代表類型
此外,E用於元素很常見了。你說得對,G也行得通。
也可能有一些傳統,因爲C++模板大部分時間都使用T,泛型在功能上與C++模板相似,用於泛型編程。
如果你的泛型類型代表了一些特別的東西,你可以把它更精確。通常有T前綴是:IRepository<TEntity>, SomeCollection<TItem, TComparer>
..
我認爲這是T代表模板,因爲它第一次出現在C++。
在此處提問[what-does-t-mean-in-c?](http://stackoverflow.com/questions/400314/what-does-t-mean-in-c?lq=1)。 – nawfal 2014-01-17 13:32:54