C++11对关键字进行了修订,加入了nullptr、constexpr、decltype、default、static_assert等,同时原有的关键字(auto,using,extern)含义和用途进行了修订。在这里主要了解一下对auto、using、extern这三个关键字的修订。
auto
自动化变量
auto a = 12;
auto b = 12.0f;
auto c = true;
auto d = [] (int x)->int{ return 12;};
auto e = std::bind(&func, _1);
延迟绑定
template<typename T, typename L>
auto fun(T x, L y)->decltype(x + y){return x;}
using
定义别名
template<typename T>
using Tlist = std::list<T>;
using Tlist = std::list<char>;
using df = void(*)();//等价于typedef void(*df)()
使用外部构造
using A::A;
引入外部类型
using typename A;
extern
外部模板
extern template<typename T>void(T t);
本文介绍了C++11中对auto、using和extern关键字的修订内容,并展示了如何使用这些关键字来简化代码并提高其可读性。此外还提到了新增的关键字如nullptr、constexpr等。
424

被折叠的 条评论
为什么被折叠?



