关系运算符 == 和 std::string:: 之间只有一个区别compare()。那就是返回值。在内部, string::operator==() 正在使用 string::compare()
关系运算符(==)返回一个布尔值,仅表示 2 个字符串是否相等,而 compare 返回一个整数,表示字符串如何相互关联。
compare()如果您对两个字符串碰巧不同时如何相互关联(较小或较大)感兴趣,则详细说明用例可能会很有用。例如,
#include <iostream> using namespace std; int main() { string s1 = "nhooo.com"; string s2 = "Hello World"; cout << s1 == s2; cout << s1.compare(s2); cout << s2.compare(s1); return 0; }输出结果
这将给出输出 -
0 1 -1