24小时热门版块排行榜    

查看: 341  |  回复: 1

cw277

木虫 (著名写手)

[求助] 一个c++程序 重载的问题、、

不用友元函数,怎么去重载这个大于号?


#include
#include
using namespace std;

class String
{public:
String( ){p=NULL;}
String(char *str);
bool operator>(String &string1,String &string2);// 这里不用友元,我想用成员函数
void display( );
private:
char *p;                                       //字符型指针,用于指向字符串
};
String::String(char *str)
{p=str;}

void String::display( )                             //输出p所指向的字符串
{cout<
bool String:: operator > (String &string1,String &string2)      //定义运算符重载函数
{
         if(strcmp(string1.p,string2.p)>0)
         return true;
         else return false;
}

void main()
{
        String string1("Hello" ) ,string2("Book" ) ;
        cout<<(string1>string2)< }

[ Last edited by cw277 on 2012-9-12 at 23:09 ]
回复此楼
感谢生活让我慢慢学会控制自己的情绪,学会包容与忍耐,学会不再去期待
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

Daithm

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
cw277: 金币+20, ★★★★★最佳答案, 早点来嘛, 我都解决了才来~ 2012-09-13 14:55:54
xzhdty: 谢谢 2012-09-13 15:44:59
用成员函数的话,由于在隐性传递了this指针,所以已经有了一个参数,对 operator> 进行重载,只需要再加上另外一个参数即可。 修改后代码:
#include
#include
using namespace std;

class String
{
public:
String( ){p=NULL;}
String(char *str);
bool operator>(String& string1); // 这里不用友元,我想用成员函数
void display( );
private:
        char *p;                                       //字符型指针,用于指向字符串
};
String::String(char *str)
{p=str;}

void String::display( )                             //输出p所指向的字符串
{cout<
bool String:: operator > (String &string1)      //定义运算符重载函数
{
        if(strcmp(p,string1.p)>0)
                return true;
        else
                return false;
}

void main()
{
        String string1("Hello" ) ,string2("Book" ) ;
        cout<<(string1 > string2)< }
2楼2012-09-13 12:27:35
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 cw277 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 上海工程技术大学激光智能制造课题组招收博士研究生 +4 两三岁ss 2026-09-14 4/200 2026-09-14 20:29 by 班主任的同桌
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-14 3/150 2026-09-14 18:01 by Aj1rhIDL5ixY
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 s3fFTmArrBt6 2026-09-14 4/200 2026-09-14 17:49 by Aj1rhIDL5ixY
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 s3fFTmArrBt6 2026-09-14 4/200 2026-09-14 17:48 by Aj1rhIDL5ixY
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-14 4/200 2026-09-14 17:25 by Aj1rhIDL5ixY
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-14 16:13 by Aj1rhIDL5ixY
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-14 16:12 by Aj1rhIDL5ixY
[找工作] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 16:00 by Aj1rhIDL5ixY
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 15:57 by Aj1rhIDL5ixY
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 15:45 by Aj1rhIDL5ixY
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 3n8v2C8RimXI 2026-09-13 4/200 2026-09-14 15:37 by Aj1rhIDL5ixY
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 QUjhNVAcOSff 2026-09-13 4/200 2026-09-14 15:13 by Aj1rhIDL5ixY
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 QUjhNVAcOSff 2026-09-13 3/150 2026-09-14 14:57 by Aj1rhIDL5ixY
[找工作] 浙江师范大学是怎么坑我的 +6 recruit123 2026-09-09 6/300 2026-09-14 12:00 by 萨仁其其格
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 QUjhNVAcOSff 2026-09-13 4/200 2026-09-14 10:01 by 23jxep3nCNZb
[考博] 西北工业大学材料学院电化学传感与催化课题组招收2027年推免研究生、博士生、博士后 +3 马方园 2026-09-10 4/200 2026-09-14 09:29 by Chem张zz
[考博] 27秋季材料博士申请求助 10+3 Cahal1 2026-09-11 4/200 2026-09-14 08:50 by 北京莱茵编辑
[教师之家] 浙江师范大学是怎么坑我的 +10 recruit123 2026-09-09 15/750 2026-09-13 10:45 by seaskyy
[基金申请] 面上有专家说实验设备不是我们单位的 +6 zj_muchong 2026-09-08 8/400 2026-09-11 06:56 by suifengdao
[有机交流] 科研求助 10+4 我吃一只鱼 2026-09-07 4/200 2026-09-10 08:32 by 0940628
信息提示
请填处理意见