Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 관계 연산자(==)와 std::string::compare()의 차이점


관계 연산자 ==와 std::string::compare() 사이에는 한 가지 차이점만 있습니다. 그것이 반환 값입니다. 내부적으로 string::operator==()는 string::compare()

를 사용하고 있습니다.

관계 연산자(==)는 2개의 문자열이 같은지 여부를 나타내는 부울을 반환하는 반면 비교는 문자열이 서로 어떻게 관련되어 있는지를 나타내는 정수를 반환합니다.

사용 사례를 자세히 설명하기 위해 두 문자열이 서로 다른 경우(적거나 크게) 어떻게 관련되는지에 관심이 있는 경우 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