관계 연산자 오버로딩

C ++ 관계 (<>,> =, <=, ==)를 오버로딩 언어 지원 연산자, 이들은 내장 데이터 타입은 C ++을 비교하기 위해 사용될 수있다.

관계형 연산자 과부하 지지체 오퍼레이터 오버로딩 관계 객체 클래스를 비교할 수있다.

/ * ** 
overrealate.cpp 
** * / 
#INCLUDE <iostream>
 사용  스페이스 성병; 

클래스 의 거리 
{ 
    개인 :
         INT의 발;
        int로 인치;
    공공 : 
        거리 () 
        { 
            피트 = 0 ; 
            인치 = 0 ; 
        } 
        거리 ( INT의 f는, 값 int i)를 
        { 
            피트 = F; 
            신장= I; 
        } 

        공극 displayDistance () 
        { 
            COUT << " F : " << 피트 << " I : " << 인치 << ENDL; 
        } 

        거리 연산자 - () 
        {  - = ; 피트 
            인치 = - 인치;
            반환 거리 (피트, 인치); 
        } 
        부울  연산자 <( CONST 거리 및 d) 
        { 
            경우 (발 <d.feet) 
            {    
                반환  사실 ; 
            } 
            경우 (피트 == d.feet && 인치 < d.inches가) 
            { 
                반환  사실 ; 
            } 
            반환  거짓 ; 
        } 
}; 

INT 의 main () 
{ 
    거리 D1 ( 11 , 10 ), D2 ( 5 , 11 ); 

    경우 (D1 < D2)는 
    { 
        COUT << " D1은 D2보다 작다 " << ENDL; 
    } 
    다른
    { 
        COUT은 << " D2는 D1보다 작다 " << ENDL; 
    } 
    반환  0 ; 
}

결과 :

exbot의 @ 우분투 : ~ / wangqinghe / C ++ / 20190808 $ ./overrelation

D2는 D1보다 작다

추천

출처www.cnblogs.com/wanghao-boke/p/11319747.html