#include<iostream.h> #include<string.h> class string{ public: string(char *); //Constructor void operator+(char *); void operator -(char); int operator==(string); void show_string(void); private: char data[256]; }; string::string(char *str) { strcpy(data,str); } void string::operator+(char *str) { strcat(data,str); } void string::operator -(char letter) { char temp[256]; int i, j; for(i=0, j=0; data[i]; i++) if (data[i]!=letter) temp[j++]=data[i]; temp[j]=NULL; strcpy(data,temp); } int string::operator==(string str) { int i; for(i=0;data[i]==str.data[i];i++) if((data[i]==NULL)&&(str.data[i]==NULL)) return(1); //Equal return(0); //Not Equal } void string::show_string(void) { cout<<data<<endl; } void main(void) { string title("Rescued By C++"); string lesson("Understanding Operator overloading"); string str("Rescued By C++"); if (title==lesson) cout<<"str and lesson are equal"<<endl; if(title==str) cout<<"title and str are equal"<<endl; }