例4.4.cpp

来自「铁道出版社出版的C++的习题源代码」· C++ 代码 · 共 73 行

CPP
73
字号
#include<iostream.h>
#include<string.h>
class String
{ 
public:
      String(){p=NULL;}
      String(char *str);
      friend int operator>(String &string1,String &string2);
      friend int operator<(String &string1,String &string2);
      friend int operator==(String &string1,String &string2);
      void display();
private:
      char *p;
};
String::String(char *str)
{
     p=str;
}
void String::display()
{     
      cout<<p;
}
int operator>(String &string1,String &string2)
{     
    if(strcmp(string1.p,string2.p)>0)
        return 1;
   else 
        return 0;
}
int operator<(String &string1,String &string2)
{
    if(strcmp(string1.p,string2.p)<0)
        return 1;
   else 
        return 0;
}
int operator==(String &string1,String &string2)
{
    if(strcmp(string1.p,string2.p)==0)
        return 1;
   else 
        return 0;
}
void compare(String &string1,String &string2)
{    
   if(operator>(string1,string2)==1)
   {     
       string1.display();
       cout<<">";
       string2.display();
   } 
    else if(operator<(string1,string2)==1)
   {     
       string1.display();
       cout<<">";
       string2.display();
   } 
     else if(operator==(string1,string2)==1)
   {     
       string1.display();
       cout<<">";
       string2.display();
   } 
    cout<<endl;
}
int main()
{    
    String string1("Hello"),string2("Book"),string3("computer"),string4("Hello");
    compare(string1,string2);
    compare(string2,string3);
    compare(string1,string4);
    return 0;
}

⌨️ 快捷键说明

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