【Cpp】for文のインクリメントは前置を使ったほうがいい
目次
for文では、前置を使ったほうがいい
結論がもう出ているのですが、C++のfor文では、処理効率的に見て、前置インクリメントのほうが後置インクリメントより優れています。
後置インクリメント
後置インクリメントでは、インクリメント対象を1度コピーしてから、加算処理をしています。
故に、コピーコストがかかるので、前置インクリメントと比べるとコストが高いということになります。1
2
3
4
5
6
7T T::operator++(int) {
T c = *this;
if (cnt < INT_MAX) {
this->cnt++;
}
return c;
}
前置インクリメント
前置インクリメントでは、インクリメント処理後に自分自身を返しています。
後置インクリメントと違い、コピーはしていません。
1 |
|
【Cpp】for文のインクリメントは前置を使ったほうがいい
https://daiki-iijima.github.io/2021/09/26/【Cpp】for文のインクリメントは前置を使ったほうがいい/