C++ 中關係運算符 (==) 和 std::string::compare() 的區別


關係運算符 == 和 std::string::compare() 之間只有一個區別。那就是返回值。在內部,string::operator==() 使用 string::compare()

關係運算符 (==) 返回一個布林值,僅表示 2 個字串是否相等,而 compare 則返回一個數字,表示這兩個字串如何相互關聯。

為了詳細說明用例,當兩個字串恰好不同時,如果你對兩個字串之間的關聯方式(小於或大於)感興趣,compare() 會很有用。例如,

示例

#include <iostream>
using namespace std;
int main() {
   string s1 = "Tutorials Point";
   string s2 = "Hello World";
   cout << s1 == s2;
   cout << s1.compare(s2);
   cout << s2.compare(s1);
   return 0;
}

輸出

將輸出 −

0
1
-1

更新於: 2020-02-11

271 瀏覽量

開啟你的 職業生涯

完成課程以獲得認證

開始
廣告