簡體   English   中英

c ++,typename和class中的模板

[英]Templates in c++,typename and class

以下兩種方式在c ++中編寫模板有什么區別

template<typename T>template<class T>

我們什么時候比他們更喜歡他們? 如果兩者都相同,那么為什么如果一個就夠了我們兩個都有?

沒有任何區別。 我更喜歡第一個(大多數),但那是我的個人品味。 這種語言在它們之間沒有任何區別。

對於模板參數,關鍵字typenameclass是等效的。 §14.1.2說:

template-parameter中的class和typename之間沒有語義差異。


如果兩者都相同,那么為什么如果一個就夠了我們兩個都有?

Stan Lippman在他的文章中解釋了這一點:

為什么C ++支持類型參數的類和類型名稱?

由於歷史原因,這些關鍵字存在。 它們之間沒有區別。 閱讀本文: http//blogs.msdn.com/b/slippman/archive/2004/08/11/212768.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM