【速度実験】vectorのpush_back()とemplace_back()はなにが違うのか?
プログラミングよくある話,push_back()とemplace_back()の話題は結構あって,検索するとたくさん出てきます.そして結論として「とりあえずemplace_back()を使っとけ」となっている記事が多いですね.今まで私もそうしていましたが,どの程度速くなるのかは気になりますよね.早速実験してみましょう.
よくある話,push_back()とemplace_back()の話題は結構あって,検索するとたくさん出てきます.そして結論として「とりあえずemplace_back()を使っとけ」となっている記事が多いですね.今まで私もそうしていましたが,どの程度速くなるのかは気になりますよね.早速実験してみましょう.
C++は機械寄りな言語で敷居が高いともいわれていますが,その分実行速度が速いことも大きなメリットです.しかし,書き方を少し間違えると,「あれ?遅くない?C++使えんな~」という状況に陥ってしまうこともしばしば....そこで,C++速度実験その2ということで,今回は皆大好きvector配列に関する実験を行っていきます.
C++言語はオブジェクト指向型言語と呼ばれ,今人気のPythonやRubyのような言語と比べ,コードはずっと複雑です.しかし高速なプログラムを書くことに長けています.
それでも何全行もの長いコードを書いたり,同じ処理をたくさん繰り返すような処理を書くと,やはり処理に時間がかかってきます.
でも,その遅い原因はコードの書き方にあることが多いです.
この記事ではよくやりがちな実行処理の遅いコードと,修正例を紹介していきます.