[C++11]decltype在泛型编程中的使用举例
生活随笔
收集整理的這篇文章主要介紹了
[C++11]decltype在泛型编程中的使用举例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
關于decltype的應用多出現在泛型編程中,比如我們編寫一個類模板,在里面添加遍歷容器的函數,操作如下:
代碼如下:
#include <iostream> #include <list>using namespace std;template<typename T> class Container { public:void printElem(T & t){for (m_it = t.begin(); m_it != t.end(); m_it++){cout << "value = " << *m_it << endl;}}private://T::iterator m_it;//error 定義變量要具體類型,這些寫不行decltype(T().begin()) m_it; };int main() {list<int>ls{ 1,2,3,4,5,6 };Container<list<int>>c;c.printElem(ls);return 0; }測試結果:
總結
以上是生活随笔為你收集整理的[C++11]decltype在泛型编程中的使用举例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [C++11]推荐使用auto的场景
- 下一篇: 荔枝酒的功效与作用、禁忌和食用方法