目次
autoを使用すると重い?
C++はautoを使用すると、実行速度が重くなると風のうわさで聞いたので、実際に確認してみました。
autoとは?
C++11 から導入されて、変数宣言時に具体的な型名のかわりに auto
キーワードを指定する事により、変数の型を初期化子から推論できる機能のことを言います。
検証
CompilerExplorerを使用して、アセンブリのコードに違いが出るのかを確認しました。
コードは同一の為、速度的には同じ実行速度になるかと思います。
この結果により、速度が遅いというのはおそらくコンパイル時間が遅くなるのかと思います。
理由は型推論を捜査処理を行う必要があるからかと思います。
このあたりの検証方法はパッと思いつかないため、思いついて検証ができそうならまた記事にまとめようと思います。