标题:运算符重载总是出现问题。
取消只看楼主
上官伊萱
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2010-9-26
结帖率:100%
已结贴  问题点数:10 回复次数:1 
运算符重载总是出现问题。
刚刚学会的重载,结果编译出来老是出现'operator >' is ambiguous,有什么错误吗。。。

#include<iostream>
#include<string>
using namespace std;

class String
{
public:
    String(){p=NULL;}
    String(char *str);
    void display();
    friend bool operator >(String &string1,String &string2);

    char *p;
};
bool operator >(String &string1,String &string2)
{
    if(strcmp(string1.p,string2.p)>0)
        return true;
    else return false;
}
String::String(char *str)
{p=str;}
void String::display()
{cout<<p;}


int main()
{
    String string1("Hello"),string2("Book");
    cout<<(string1 >string2)<<endl;
}
搜索更多相关主题的帖子: 运算符 重载 
2010-10-20 15:02
上官伊萱
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2010-9-26
得分:0 
额 那是我的版本有问题了。。。换个试试。。。。
2010-10-22 16:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-323437-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.371685 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved