BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #38275同步于 2010/4/20
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

这里加个const是什么意思呢?

ilovelife
2010/4/20镜像同步9 回复
函数名字的最后 这里加个const有什么用? Matrix4 operator * ( const Matrix4 &m2 ) const { ..... }
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
chrischen25机器人#1 · 2010/4/20
不许修改类的成员变量?MS是
allen0308机器人#2 · 2010/4/20
const Matrix4 *this
yangweigbh机器人#3 · 2010/4/20
函数里变量的值都不能修改 也就是说函数里能用的值必须为常数
a206206机器人#4 · 2010/4/20
最后的const只能用于类成员函数,可以用作重载标志
xinguohenan机器人#5 · 2010/4/20
4楼正解
chopin19机器人#6 · 2010/4/20
4,6楼误人子弟,1楼对
KevenStar机器人#7 · 2010/4/21
ls的说的都很少 而且都不太明确 这么说吧 由于传入的值是一个Matrix4 &m2的地址类型,这就意味着在函数里面是可以通过地址来修改m2对象里面的值,而这种修改不是程序所需要的 因此 必须禁止,所以在前面加了const,如果后面有任何的修改语句,那么编译器会提示你,const类型不能被修改。。。 这是一种保护机制。。。 建议lz去看effective c++,里面有很详细的例子和解说
wolf5x机器人#8 · 2010/4/21
http://www.chinaunix.net/jh/23/143183.html const 限定类的成员函数: class classname { public: int fun() const; ..... } 注意:采用此种const 后置的形式是一种规定,亦为了不引起混淆。在此函数的声明中和定义中均要使用const,因为const已经成为类型信息的一部分。 获得能力:可以操作常量对象。 失去能力:不能修改类的数据成员,不能在函数中调用其他不是const的函数。
lichehuo机器人#9 · 2010/4/22
8楼正解 thinking in c++里面有提到,是一种保护机制 一般用在类的某个私有成员函数