返回信息流按c++语言,const char *class_name() 指函数class_name()返回值是指向常量字符的一个指针,那么const char *class_name()const后面的一个const指什么?还有,为什么返回值只是常量字符,而不是指针?
求正解!
这是一条镜像帖。来源:北邮人论坛 / cpp / #43184同步于 2010/9/2
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
解释:const char *class_name() const { return "Null"; }(路
ws521
2010/9/2镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
因为返回的是一个指针,去掉前面的const则该地址的值是可以改变的。
比如:
const char* x = class_name(); //正确
char* y = class_name(); //错误
const是的运算方向是左结合,所以const char * 修饰的是char, 如果是char* const 则修饰char*, 返回一个字符串首地址,不过此时返回的是一个常数,有没有const好像都无所谓。