C++的一个问题,比方char[]="very good";string b=char;
2 回答
子衿沉夜
TA贡献1828条经验 获得超3个赞
首先char是关键字,您的意思应该是
char ch[]="very good"; string b = ch;
这是因为string有构造函数:
string(const char* c);能够将一个char*类型的地址转换为一个string变量
而string b = ch;则会调用该函数(注意不是复制构造函数)。即
string b = ch;等价于string b(ch);
手掌心
TA贡献1942条经验 获得超3个赞
不相信C++下char[]="very good";string b=char;这两句代码的正确性——char是C/C++的保留字,不可以用来做用户数组名,这样写编译恐怕都过不了。如果不用char而用别的什么如str,那么string b=str;就是声明一个string类对象b,并用str指向的字符串初始化。
- 2 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消