国产成人啪精品视频免费网-国产成人啪精品视频免费网站软件-国产成人盗拍精品免费视频-国产成人深夜福利在线观看-a中文字幕1区-a毛片

二維碼
企資網

掃一掃關注

當前位置: 首頁 » 企業資訊 » 熱點 » 正文

模板中typename和class關鍵字

放大字體  縮小字體 發布日期:2021-09-07 23:08:33    作者:企資小編    瀏覽次數:87
導讀

我們都知道,在STL中基本上都使用了模板類的聲明,即template。在模板類的聲明中,我們有兩種方式:template class Ttemplate typename T在這里,class和typename是相同的。也就是說,在聲明一個template type param

我們都知道,在STL中基本上都使用了模板類的聲明,即template。在模板類的聲明中,我們有兩種方式:

template <class T>template <typename T>

在這里,class和typename是相同的。也就是說,在聲明一個template type parameter(模板類型參數)的時候,class和typename意味著 完全相同的東西。但是,在C++中,有的時候必須要使用typename.下面我們列舉下面一個例子。關鍵字typename被用來作為型別之前的標識符號。

template <class T>class MyClass{typename T::SubType * ptr;   ...};

在這里,typename指出SubType是class T中定義的一個類別,因此ptr是一個指向T::SubType型別的指針。如果沒有關鍵字typename,SubType會被當成一個static成員,于是

T::SubType * ptr 會被解釋為型別T內的數值SubType與ptr的乘積。

SubType成為一個型別的條件是, 任何一個用來取代T的型別,其內部必須有一個內部型別

(inner type)SubType的定義。例如,將型別Q當作template的參數。

MyClass x;

必要條件是型別Q有如下的內部型別定義:

class Q{typedef int SubType;   ...};

因此,MyClass的ptr成員應該變成一個指向int型別的指針,子型別SubType也可以成為抽象
數據型別(例如,class):

class Q{class SubType;   ...};

注意,如果要把一個template中的某個標識符號指定為一種類別,就算是意圖顯而易見,關鍵字typename也是不能省略的,因此C++的一般規則是,除了使用typename修飾之外,template內的任何標識符號都被視為一個值而不是一個類別(對象)。

總結:

    template<typename T>與template<class T>一般情況下這兩個通用,但有一個特例,就是當 T 是一個類,而這個類又有子類(假設名為 innerClass) 時,應該用 template<typename>typename T::innerClass myInnerObject;這里的 typename 告訴編譯器,T::innerClass 是一個類,程序要聲明一個 T::innerClass 類的對象,而不是聲明 T 的靜態成員,而 typename 如果換成 class 則語法錯誤
 
(文/企資小編)
免責聲明
本文僅代表作發布者:企資小編個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:[email protected]
 

Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

粵ICP備16078936號

微信

關注
微信

微信二維碼

WAP二維碼

客服

聯系
客服

聯系客服:

在線QQ: 303377504

客服電話: 020-82301567

E_mail郵箱: [email protected]

微信公眾號: weishitui

客服001 客服002 客服003

工作時間:

周一至周五: 09:00 - 18:00

反饋

用戶
反饋

主站蜘蛛池模板: 欧美性猛交xxx免费看人妖 | 一级aaaaaa毛片免费同男同女 | 欧美一区综合 | 成人午夜视频免费观看 | 国产日韩精品一区二区三区 | 成人在免费视频手机观看网站 | 中文在线观看视频 | 亚洲欧洲一区二区三区久久 | 精品国产呦系列在线看 | 国产精品亚洲玖玖玖在线靠爱 | 国产成人丝袜网站在线看 | 精品一区二区三区视频在线观看免 | 2000xxxxav影院 | 欧美自拍视频在线 | 国产农村一二三区 | 日韩三级免费看 | 亚洲国产第一区二区香蕉日日 | 99精品视频在线观看免费播放 | 欧洲97色综合成人网 | 在线男人的天堂 | 久久在线观看免费视频 | 亚洲国产欧美另类 | 国产精品成人在线 | 久久亚洲精品中文字幕三区 | 国内精品久久久久影院老司 | 日韩精品一区二区三区四区 | 久久国产三级 | 手机看片精品国产福利盒子 | 一 级做人爱全视频在线看 一本不卡 | 国内国产真实露脸对白 | www黄网| 91在线精品亚洲一区二区 | 特黄a三级三级三级 | 一级毛片看一个 | 毛片一级| 欧美日韩一区二区三区视视频 | 免费特黄视频 | 九九精品国产兔费观看久久 | 久久久久999| 美女黄页网站 | 女人张开腿让男人 |