p324 重载双目运算符.cpp

来自「谭浩强 《C++ 程序设计》第三版的部分课后练习题源码」· C++ 代码 · 共 50 行

CPP
50
字号
# include<iostream>
# include<string>
using namespace std;
class String
{
      private:
              char*p;
      public:
             String()
             {
                     p=NULL;        
             }
             String(char*str)
             {
                     p=str;
             }
            friend bool operator==(String &s1,String &s2);
            friend bool operator<(String &s1,String &s2);
            friend bool operator>(String &s1,String &s2); 
};

bool operator==(String &s1,String &s2)
{
     if(strcmp(s1.p,s2.p)==0) return true;
     else return false;
}

bool operator<(String &s1,String &s2)
{
     if(strcmp(s1.p,s2.p)<0) return true;
     else return false;
}

bool operator>(String &s1,String &s2)
{
     if(strcmp(s1.p,s2.p)>0) return true;
     else return false;
}

int main()
{   String s1("songying"),s2("laoda"),s3("zhaowei");
    cout<<(s1>s2)<<endl;
    cout<<(s2<s3)<<endl;
    cout<<(s3==s1)<<endl;
    system("pause");
    return 0;
    
    
    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?