自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C++指針重載應(yīng)用代碼解讀

開發(fā) 后端
我們今天將會(huì)在這篇文章中通過一段代碼的介紹為大家詳細(xì)解讀C++指針重載的具體應(yīng)用方法。并為大家總結(jié)了一些應(yīng)用中所需要注意的問題。

C++編程語言既然是C語言的高級升級版本。那么它當(dāng)然擁有C語言的所有功能。并且在一定程度上還擁有很多比較實(shí)用的應(yīng)用功能。今天我們?yōu)榇蠹医榻B的是其中關(guān)于指針的操作,有關(guān)C++指針重載的具體應(yīng)用方法的介紹。

C++指針重載相關(guān)代碼示例:

  1. #include "stdafx.h"  
  2. #include < iostream> 
  3. #include < string> 
  4. template< typename T> 
  5. inline T const& max(T const& a, T const& b)  
  6. {  
  7. return a <  b ? b : a;  
  8. }  
  9. // 求兩個(gè)指針?biāo)钢档?**者  
  10. template< typename T> 
  11. inline T const& max(T* const& a, T* const& b)  
  12. {  
  13. return *a <  *b ? *b : *a;  
  14. }  
  15. // 求兩個(gè)字符串的***者  
  16. inline char const* const& max(char const* const& a, 
    char const* const& b)  
  17. {  
  18. return strcmp(a, b) <  0 ? b : a;  
  19. }  
  20. int _tmain(int argc, _TCHAR* argv[])  
  21. {  
  22. // 比較兩個(gè)int的***值,將調(diào)用***個(gè)max模版  
  23. int a = 7;  
  24. int b = 42;  
  25. std::cout< < "max(a, b)==>"< < ::max(a, b)< < std::endl;  
  26. // 比較兩個(gè)string的***值,將調(diào)用***個(gè)max模版  
  27. std::string s = "hey";  
  28. std::string t = "you";  
  29. std::cout< < "max(s, t)==>"< < ::max(s, t)< < std::endl;  
  30. // 比較兩個(gè)指針?biāo)竷?nèi)容的***值,將調(diào)用第二個(gè)max模版  
  31. int* p1 = &a;  
  32. int* p2 = &b;  
  33. std::cout< < "max(p1, p2)==>"< < ::max(p1, p2)< < std::endl;  
  34. // 比較兩個(gè)c字符串的***值,將調(diào)用第三個(gè)非模版max函數(shù)  
  35. char const* s1 = "David";  
  36. char const* s2 = "Nico";  
  37. std::cout< < "max(s1, s2)==>"< < ::max(s1, s2)< < std::endl;  
  38. return 0;  

#t#上面的C++指針重載代碼有需要注意:

1):max(a, b)和max(s, t)調(diào)用的是同一個(gè)max模版函數(shù)。因?yàn)樗麄儩M足***個(gè)模版函數(shù)的定義,只是類型不一樣而已。

2):max(p1, p2)的調(diào)用有點(diǎn)玄乎。

3):max(s1, s2)會(huì)調(diào)用第三個(gè)非模版的max函數(shù)。不會(huì)使用第二個(gè)模版函數(shù)產(chǎn)生新的實(shí)例。

責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2010-02-03 15:58:51

C++ timer

2010-02-05 17:58:32

C++鏈棧模板

2015-05-13 10:37:58

C++指針與引用

2010-02-05 16:46:58

C++ TinyXml

2010-02-06 16:59:19

C++ kmp算法模板

2011-07-12 13:01:00

CC++

2010-02-05 14:36:20

C++智能指針

2011-07-20 17:16:50

C++重載函數(shù)

2010-01-18 16:56:30

C++函數(shù)

2021-12-21 15:31:10

C++語言指針

2010-02-06 09:46:46

C++單向鏈表

2010-02-04 16:07:39

C++回調(diào)函數(shù)

2011-04-11 14:18:37

CC++指針

2010-01-26 13:42:28

C++指針

2011-04-11 11:09:50

this指針

2010-01-21 14:07:14

CC++聲明

2010-02-01 14:26:50

C++讀寫文本文件

2010-02-02 17:27:16

C++連接MySqL數(shù)

2021-06-10 08:51:57

C++指針聲明指針相關(guān)概念

2020-06-17 12:22:44

C覆蓋重載
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號