【C++】C++11 STL算法(九):番外篇

1、如果获取指针迭代器指向的类型

详见:C 11:如何获取一个指针或迭代器指向的类型?

decltype(*std::declval<Pointer>())

decltype:c++11关键字,类型推导。详见:【C++】C++11新增关键字详解
std::declval将任何类型T转换为引用类型

2、lambad函数的参数声明不能使用auto

在C++11中,lambad函数的参数声明不能使用auto;否则报错;

error: 'auto' not allowed in lambda parameter

同时提示:只有在C++14及以上版本中才能使用

error: use of ‘auto’ in lambda parameter declaration only available with -std=c++14 or -std=gnu++14

注:在C++11中可以使用可以使用 decltype(*std::declval<Pointer>()) 代替

发布了324 篇原创文章 · 获赞 266 · 访问量 42万+

猜你喜欢

转载自blog.csdn.net/u010168781/article/details/103403209