11

在 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}; 
4

1 回答 1

17

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; 
于 2013-09-01T08:32:31.613 回答