1.auto关键字及用法
- 只是使用auto的时候,编译器根据上下文情况,确定auto变量的真正类型。用法:
auto index = 10;
cout << "index:" << index;
存在意义:
- 写代码更简洁,类型自动判断,特别是在复杂容器的数据结构中。
使用注意:
- auto不可以作为函数的返回值。
2.nullptr关键字及用法
- nullptr和NULL用法基本相同。
- 解决空指针NULL表示可能出错的情况。
出错示例:
#include <iostream>
using namespace std;
class Test
{
public:
void TestFunc(int index)
{
std::cout << "TestFunc 1" << std::endl;
}
void TestFunc(int * index)
{
std::cout << "TestFunc 2" << std::endl;
}
};
int main()
{
Test test;
test.TestFunc(NULL);
test.TestFunc(nullptr);
return 0;
}
test.TestFunc(NULL);调用的结果也应该是"TestFunc 2",实际结果是"TestFunc 1"。