最佳答案
我一直在使用c++ 11标准中提供的新的auto
关键字来处理复杂的模板类型,我相信这就是它的设计目的。但我也用它来做以下事情:
auto foo = std::make_shared<Foo>();
更令人怀疑的是:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
我还没有看到很多关于这个话题的讨论。似乎auto
可能被过度使用,因为类型通常是一种文档和完整性检查的形式。你在使用auto
时的界限在哪里,这个新功能的推荐用例是什么?
澄清一下:我并不是在寻求哲学观点;我要求标准委员会对这个关键字的预期使用,可能还会对如何在实践中实现预期使用发表评论。