努力学习JAVA的小亮 2020-06-07 15:43 采纳率: 100%
浏览 95
已采纳

这个程序完全按照书本上面来编写的,为啥最终会出现这个C2664错误,如何更改?

#include
#include
using namespace std;
class String
{
public:
String() { p = NULL; }
String(char str[]);
friend bool operator>(String &string1, String &string2);
private:
char *p;
};
String::String(char str[])
{
p = &str[];
}

bool operator> (String &string1, String &string2)
{
if (strcmp(string1.p, string2.p)>0)
return true;
else return false;
}
int main()
{
String string1("1234"),string2("22");
cout << (string1 > string2) << endl;

}

最终提示无法将参数一中的const char[3]转换成char,同样的参数2也是同样的错误,我这个程序没有用到const常量,这是从哪里蹦出来的呢?如何更改,求大神指点
  • 写回答

1条回答 默认 最新

  • threenewbee 2020-06-07 17:08
    关注

    问题解决的话,请点下采纳

    #include<iostream> 
    #include<cstring>
    using namespace std;
    class String
    {
    public:
    String() { p = NULL; }
    String(char str[]);
    friend bool operator>(String &string1, String &string2);
    private:
    char *p;
    };
    String::String(char str[])
    {
    p = str;
    }
    bool operator> (String &string1, String &string2)
    {
    if (strcmp(string1.p, string2.p)>0)
    return true;
    else return false;
    }
    int main()
    {
    String string1("1234"),string2("22");
    cout << (string1 > string2) << endl;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)