C++函数模板(二)引用
生活随笔
收集整理的這篇文章主要介紹了
C++函数模板(二)引用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <iostream>
using namespace std;
template<typename T> void Swap(T &a, T &b){T temp = a;a = b;b = temp;
}
int main(){//交換 int 變量的值int n1 = 100, n2 = 200;Swap(n1, n2);cout<<n1<<", "<<n2<<endl;//交換 float 變量的值float f1 = 12.5, f2 = 56.93;Swap(f1, f2);cout<<f1<<", "<<f2<<endl;//交換 char 變量的值char c1 = 'A', c2 = 'B';Swap(c1, c2);cout<<c1<<", "<<c2<<endl;//交換 bool 變量的值bool b1 = false, b2 = true;Swap(b1, b2);cout<<b1<<", "<<b2<<endl;return 0;
}
引用不但使得函數定義簡潔明了,也使得調用函數方便了很多。整體來看,引用讓編碼更加漂亮。
template <typename 類型參數1 , typename 類型參數2 , ...> 返回值類型 函數名(形參列表){//在函數體中可以使用類型參數 }typename關鍵字也可以使用class關鍵字替代,它們沒有任何區別。C++ 早期對模板的支持并不嚴謹,沒有引入新的關鍵字,而是用 class 來指明類型參數,但是 class 關鍵字本來已經用在類的定義中了,這樣做顯得不太友好,所以后來 C++ 又引入了一個新的關鍵字 typename,專門用來定義類型參數。不過至今仍然有很多代碼在使用 class 關鍵字,包括 C++ 標準庫、一些開源程序等。
總結
以上是生活随笔為你收集整理的C++函数模板(二)引用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++函数模板(一)
- 下一篇: s3c2440移植MQTT