私はauto
、C ++ 11標準で利用できる新しいキーワードを、それが設計されたと考えている複雑なテンプレート型に対して使用しています。しかし、私はそれを次のものにも使用しています:
auto foo = std::make_shared<Foo>();
そしてもっと懐疑的に:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
私はこのトピックについてあまり議論していません。と思われるauto
タイプは、多くの場合、文書化と健全性チェックの形であることから、過剰に使用することができます。使用の際にどこに線を引くauto
か、この新機能の推奨される使用例は何ですか?
明確にするために、私は哲学的な意見を求めているのではありません。標準的な委員会によるこのキーワードの意図された使用をお願いします。おそらく、その意図された使用が実際にどのように実現されるかについてのコメントが必要です。
補足:この質問は、SE.Programmersに移動され、Stack Overflowに戻されました。これに関する議論は、このメタ質問にあります。
auto
キーワードを使用した場合は、それがどのように使用されることになっているのかわかります。これは、この機能を初めて使用する人として、どのように使用するのですか?
var
は、C#が導入されたとき(つまり、結局のところ、動的型付けではないという考えを人々が理解したとき)いたるところで見られました。必要に応じて、この質問から始めて、関連する質問に進むことができます。
auto foo = bla();
「悪い」ははっきり意見ではなく、この質問を行い、正確に近い票が示すものですプログラマSEにそれが関連する可能議論を、答えること、です。/