类成员函数后带const
来源:互联网 发布:武汉达内大数据怎么样 编辑:程序博客网 时间:2024/06/08 04:29
——www.libcl.cn
这篇文章主要记录我对"类成员函数后带const"的理解。
例子:
为什么在成员函数printa()后面加多一个const?
百度一下,看了别人的解释说:“这是把整个函数修饰为const,即‘函数体内不能对成员数据做任何改动‘;且如果声明这个类的一个const实例,这时则只能调用这个类中有const修饰的函数。”
我的理解是:成员函数void printa()const;不能对函数体内成员变量int a作任何修改。
贴上我以下的测试代码:
该例子主要呈现的结果是:“且如果声明这个类的一个const实例,这时则只能调用这个类中有const修饰的函数。”
这篇文章主要记录我对"类成员函数后带const"的理解。
例子:
- class constTemp
- {
- int a;
- public:
- constTemp(int nA = 0) { a = nA ;}
- void seta(int nA);
- void printa()const;
- };
百度一下,看了别人的解释说:“这是把整个函数修饰为const,即‘函数体内不能对成员数据做任何改动‘;且如果声明这个类的一个const实例,这时则只能调用这个类中有const修饰的函数。”
我的理解是:成员函数void printa()const;不能对函数体内成员变量int a作任何修改。
贴上我以下的测试代码:
- #include <iostream>
- using namespace std;
- class constTemp
- {
- int a;
- public:
- constTemp(int nA = 0) { a = nA ;}
- void seta(int nA);
- void printa()const;
- };
- void constTemp::seta(int nA)
- {
- a = nA;
- }
- void constTemp::printa() const
- {
- cout << "a'value is:" << a << endl;
- }
- int main()
- {
- //此时声明的是一个const的对象,注意声明const对象必须确保该class有构造函数
- const constTemp cTTest;
- //printa()函数没修改任何成员变量所以还可以继续使用。
- cTTest.printa();
- //此时就不能再调用成员函数去修改成员变量,这是非法的。
- //cTTest.seta(5);
- cTTest.printa();
- return 0;
- }
- 类成员函数后带const
- 成员函数后的const
- 关于类成员函数结尾带const和不带const的问题
- 类const成员函数
- C++类成员函数后加const含义
- const用在成员函数后
- c++成员函数后的const
- C++中成员函数后加const
- 类成员函数 后加const和不加const 的区别
- C++ const 类和 const 成员函数
- 类的 const 成员函数
- 类的const成员函数
- const与类成员函数
- 类中的const成员函数
- c++ const类成员函数
- const关键字类成员函数
- C++类const成员函数
- 类的const成员函数
- 中国站长必须知道的50件事
- 各种线上推广手段的投入产出比数字公布
- 互联网创业五大核心问题:既可致胜也可致命
- 网站运营推广之友情链接终极攻略
- 谈谈酷6网的推广手段
- 类成员函数后带const
- 超简单的struts文件上传
- javascript监听键盘事件
- 下一代电子商务公司什么样(上)
- js文件操作
- Web服务器之比较
- 我的下载
- js解码函数 escape,encodeURI,encodeURIComponent比较
- IIS,Tomcat,Apache,Resin的区别