[C++11]函数模板的默认模板参数
生活随笔
收集整理的這篇文章主要介紹了
[C++11]函数模板的默认模板参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C++11中添加了對函數模板默認參數的支持。
代碼如下:
#include<iostream> using namespace std;template<typename T = long ,typename U = int > void myTest(T t = 'A',U u = 'B') {cout << "t = " << t << " u = " << u << endl; }int main() {myTest('a', 'b');//自動推導,根據傳遞的實參myTest<int>('a', 'b');myTest<char>('a', 'b');myTest<int, char>('a', 'b');myTest<char, int>('a', 'b');myTest();return 0; }測試結果:
默認的函數參數不能用于類型推導。
代碼如下:
#include<iostream> using namespace std;template<typename T ,typename U > void myTest(T t = 'A',U u = 'B') {cout << "t = " << t << " u = " << u << endl; }int main() {myTest();//errorreturn 0; }類模板可以有默認的模板參數。
代碼如下:
#include <iostream> using namespace std;template<typename T = int ,T t = 520> class Test { public:void print(){cout << "value = " << t << endl;} };int main() {Test<> t;//記得寫<>t.print();return 0; }測試結果:
總結
以上是生活随笔為你收集整理的[C++11]函数模板的默认模板参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [C++11]通过using定义基础类型
- 下一篇: 圆茄子的功效与作用、禁忌和食用方法