C++常量详解二(常量形参,常量返回值,常量成员函数)
1.常量形参 2.常量返回值 3.常量成员函数 int f() const{```} 然后这里就有意思了 //定义一个简单类student class student{ public: string name; int number; public : student() :name("lili"),number(0){ }//构造函数 string Name(){return name;}//非常量成员函数 int Number() const{return number;}//常量成员函数 }; //现在定义一个常量student对象 const student s1; s1.Name();//报错 s1.Number();//正确 事实上,当我们调用s1.Name()的时候发生了以下初始化过程: student *const this=&s1; 此时相当于如下过程: const student *s1; student *const this=s1; 很显然s1有一个底层const,而this没有,初始化失败。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |