Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Có khác biệt hiệu năng giữa i++ và ++i trong C++ không?


Kết quả hiệu quả của i++ và ++i giống nhau. Khác biệt: i++ tăng sau khi gán, ++i tăng trước rồi gán.

Ví dụ

#include <iostream>
using namespace std;

int main() {
    int x = 3, y, z;
    y = x++;
    z = ++x;
    cout << x << ", " << y << ", " << z;
    return 0;
}

Kết quả

5, 3, 5

Hiệu năng: ++i nhẹ nhanh hơn i++ vì i++ tạo bản sao cục bộ trước khi tăng, còn ++i không. Tuy nhiên trình biên dịch hiện đại thường tối ưu hóa, hiệu năng phụ thuộc kiến trúc.