Avatar ·

C++中==与===的区别

大家好!请问在C++中,运算符==和===有什么区别?我刚开始学习这门语言,在一些教程中看到过三重等号的提及,但没有任何地方给出明确的解释。

我尝试了以下代码:

#include <iostream>

int main() {
    int a = 5;
    int b = 5;
    
    if (a == b) {
        std::cout << "a == b" << std::endl;
    }
    
    // 尝试使用 ===
    // if (a === b) { ... }  // 这无法编译
    
    return 0;
}

尝试使用===时,编译器会报错:根据编译器版本不同,显示'expected expression'或'token is not a valid binary operator'。

我原本以为===可能是某种严格比较(就像在JavaScript或PHP中那样),但C++中显然没有这个运算符。也许这是某个宏或扩展?还是我搞混了?

请指教,谢谢!