在C ++ 11中,我们鼓励使用auto作为变量类型,
这在初始化像类和向量的类型时也适用吗?
我的意思是我们应该写下以下内容:
auto a = 10;
auto b = MyClass();
auto c = vector<int>{1, 2, 3};
而不是:
auto a = 10;
MyClass b;
vector<int> c = {1, 2, 3};
答案 0 :(得分:16)
auto
只是简化
VeryLongClassName *object = new VeryLongClassName();
现在它将是
auto *object = new VeryLongClassName();
没有理由写
auto a = 10;
auto b = MyClass();
auto c = vector<int>();
因为它比
更长更难阅读int a = 10;
MyClass b;
vector<int> c;