鱼C论坛

 找回密码
 立即注册
查看: 2704|回复: 4

const char* 类型的值不能用于 用于出初始化“char”类型的实体?

[复制链接]
发表于 2021-3-31 15:14:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<iostream>
#include<string>
using namespace std;
class String {
        int Length;
        char* Strp;
        char* s;
public:
        String();                  //重载构造函数1
        String(char* s);  //重载构造函数2
        String(String& s); //重载构造函数3
        void Print()
        {
                cout << "String=" << Strp << endl;
                cout << "Length=" << Length << endl;
        }
};
String::String()
{
        Length = 0;
        Strp = new char[Length + 1];
        *Strp = '\0';
}
String::String(char* s)
{
}
String::String()
{
        Length = strlen(s);
        Strp = new char[Length + 1];
        strcpy(Strp, s);
}
String::String(String& s)
{
        Length = s.Length;
        Strp = new char[Length + 1];
        strcpy(Strp, s.Strp);
}
int main()
{
        char* s = "This is a string";
        String str1;
        String str2(s);
        String str3(str2);
        str1.Print();
        str2.Print();
        str3.Print();
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-31 15:23:37 | 显示全部楼层
对呀,一个是 char指针,一个是char,有什么问题吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-31 15:27:20 | 显示全部楼层
人造人 发表于 2021-3-31 15:23
对呀,一个是 char指针,一个是char,有什么问题吗?

怎么才能编译通过
严重性        代码        说明        项目        文件        行        禁止显示状态
错误(活动)        E0144        "const char *" 类型的值不能用于初始化 "char *" 类型的实体        Tutorial        E:\Document\C++\C++\Visual studio\newChapter13\Tutorial\13.1.cpp        41       
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-31 15:31:47 | 显示全部楼层
yyyf 发表于 2021-3-31 15:27
怎么才能编译通过
严重性        代码        说明        项目        文件        行        禁止显示状态
错误(活动)        E0144        "const char *" 类型 ...

这和你的标题不符,你标题上说的是 const char *和 char
你现在的问题是 const char *和 char *
少了一个 *,提问题要认真,提出错误的问题对解决问题没有任何帮助
当然,写代码更要认真

char* s
改成
const char *s
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-31 15:42:54 | 显示全部楼层
人造人 发表于 2021-3-31 15:31
这和你的标题不符,你标题上说的是 const char *和 char
你现在的问题是 const char *和 char *
少了一 ...

谢谢大佬对萌新的指导
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 21:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表