大二的时候看过《C++Primer》,了解过C++11,因此就在简历上写上了解C++11,结果就是频频被问到有关C++11。。。发现自己答的并不算太好~
因此,简单总结一下,我在找实习的过程被问到的C++11特性。
1. nullptr
注意在C++中NULL仅仅是define NULL 0的一个宏定义,因此,有时候会产生歧义
比如f(char*)和f(int),参数传NULL的话到底该调用哪个?事实上,在VS下测试这样的函数重载会优先调用f(int),但是f(char *)也是正确的,因此C++引入nullptr来避免这个问题。
更多请参考nullptr, NULL
2. auto, decltype
两者支持类型推导,获取
int a = 0;
decltype(a) b = 3;
cout << b << endl;
3.范围for
常常和auto结合
比如
int arr[] = {
1,2,3,4,5};
for(int& e : arr)
{
e = e