日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
C++模板限制實(shí)際應(yīng)用方式探討

C++編程語(yǔ)言中的模板應(yīng)用是一個(gè)非常重要的操作技巧。它的應(yīng)用在很大程度上提高了編程人員程序開(kāi)發(fā)效率。在這篇文章中,我們將會(huì)重點(diǎn)介紹一下有關(guān)C++模板限制的相關(guān)應(yīng)用,方便大家理解。

1、浮點(diǎn)數(shù)不能作為 非類(lèi)型模板參數(shù) 如:template class TT;

2、自定義類(lèi)不能作為模板參數(shù),這些自定義類(lèi)也是 非類(lèi)型模板參數(shù)。

 
 
 
  1. // 6-14-2009  
  2. #include  
  3. using namespace std;  
  4. // #define FLOAT  
  5. // #define TEMPLATE_OBJECT  
  6. #define COMMON_OBJECT  
  7. #ifdef FLOAT  
  8. template  
  9. class TT;  
  10. #endif  
  11. #ifdef TEMPLATE_OBJECT  
  12. template < class T > 
  13. class TM {};  
  14. template < TM c > 
  15. class TT;  
  16. #endif  
  17. #ifdef COMMON_OBJECT  
  18. class TN{};  
  19. template < TN c > 
  20. class TT;  
  21. #endif 

C++模板限制中還有一個(gè),而且相當(dāng)重要:

模板類(lèi)或模板函數(shù)的聲明與定義必須位于同一個(gè)文件中!除非新一代的編譯器支持關(guān)鍵字export.

如果編譯器不支持export關(guān)鍵字,但我們又想把聲明與定義分開(kāi)寫(xiě),那該如何操作呢?方法如下:

把模板聲明寫(xiě)在.h中,模板定義寫(xiě)在.cpp中,需要注意的是,我們并不像一般的文件包含那樣,在.cpp中包含.h,而是在main.cpp中,把這兩個(gè)東東包含進(jìn)來(lái)如:

 
 
 
  1. // test.h  
  2. template  
  3. class Test  
  4. {  
  5. public:  
  6. void print();  
  7. };  
  8. // test.cpp  
  9. template  
  10. void Test::print()  
  11. {  
  12. cout << "Successfully!" << endl;  
  13. }  
  14. // main.cpp  
  15. #include  
  16. using namespace std;  
  17. #include "test.h"  
  18. #include "test.cpp"  
  19. int main()  
  20. {  
  21. Test t;  
  22. t.print();  
  23. return 0;  

以上就是對(duì)C++模板限制的相關(guān)介紹。

【編輯推薦】

  1. C++字符串分割函數(shù)具體使用方法總結(jié)
  2. C++異常傳遞三種不同方式介紹
  3. C++多線(xiàn)程代碼范例剖析
  4. C++獲得系統(tǒng)時(shí)間不同方案介紹
  5. C++靜態(tài)成員函數(shù)基本概念講解

網(wǎng)站標(biāo)題:C++模板限制實(shí)際應(yīng)用方式探討
URL標(biāo)題:http://www.5511xx.com/article/dhghoeo.html