我一直在使用auto
C ++ 11标准中的new 关键字来处理复杂的模板化类型,这是我认为它的设计目的。但是我还将它用于诸如以下的事情:
auto foo = std::make_shared<Foo>();
更怀疑的是:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
关于这个主题,我还没有看到太多讨论。auto
由于类型通常是文档和健全性检查的一种形式,因此似乎可以过度使用。您在哪里划界线auto
?此新功能的建议用例是什么?
需要澄清的是:我不是在征求哲学意见;我要求标准委员会提供此关键字的预期用途,并可能对在实践中如何实现预期用途提出意见。
旁注:此问题移至SE.Programmers,然后返回到堆栈溢出。关于这个的讨论可以在这个元问题中找到。
auto
关键字,那么您知道应该如何使用它。这就是我要问的问题,作为对此功能的新手,我应该如何使用它?
auto foo = bla();
“不好”显然是一种观点,而不是事实,这使这个问题得以解答,并使其与程序员SE相关,这正是密切投票所表明的。/ shrug