c++指针指向字符串的问题
strcpy(this->name,name);
其中this->name 中的name是一个字符串,报错是在this上,说this->name这个是**char类型的实参,与char类型的形参不兼容。
this->name 不应该是char类型的吗?
我像下面这样写之后就不报错了:
Book::Book(char * name,char * WriterName):Publication(name)
{
strcpy(*this->name,name);
}
我要给name赋值就要这样写吗?为什么要这样写?
、
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这取决于
name
成员的定义。这里
name
的类型等同于char**
。而strcpy
的参数类型是char*
,报错是必然了咯。这个写错了吧??
看不懂你的错误提示,能贴一个name的定义吗?
std::string name的话
就可以
了;