转载 C++函数后加const
2016-03-03 16:49
281 查看
这是用在类成员函数的声明和定义中,表示函数可以对const对象进行操作,但是不能改变数据成员的内容
#include <iostream>
using namespace std;
class A{
int data;
public:
A(int da=100):data(da){}
void display1(){cout < <data < <endl;}
void display2() const {cout < <data < <endl;}
void display3() const
{
data+=100;
cout < <data < <endl;
}
};
int main()
{
A a1;
const A a2;
a1.display1();
a1.display2();
a1.dispaly3(); //error ,const声明的成员函数不能改变数据成员的值
a2.display1(); //error ,const对象不能调用非const函数
a2.display2(); //right
a2.display3(); //error ,const对象不能调用非const函数,且不能改变数据成员值
system( "Pause ");
return 0;
}
#include <iostream>
using namespace std;
class A{
int data;
public:
A(int da=100):data(da){}
void display1(){cout < <data < <endl;}
void display2() const {cout < <data < <endl;}
void display3() const
{
data+=100;
cout < <data < <endl;
}
};
int main()
{
A a1;
const A a2;
a1.display1();
a1.display2();
a1.dispaly3(); //error ,const声明的成员函数不能改变数据成员的值
a2.display1(); //error ,const对象不能调用非const函数
a2.display2(); //right
a2.display3(); //error ,const对象不能调用非const函数,且不能改变数据成员值
system( "Pause ");
return 0;
}
相关文章推荐
- C语言#line预处理
- c++中读写一行字符串和读写一个词之间的区别(c++ primer 5th)
- 2015.11--360校招面试-后台C++开发工程师
- 迅雷2013C++笔试卷B
- 线性表C++类实现
- opencl:改造C++接口增加对内存编译(compile)的支持
- _beginThread如何传递多个参数
- [C++] C++学习代码
- 1092. To Buy or Not to Buy (20)
- 阿里云服务器运行VS2013项目问题-C++操作数据库
- c/c++静态区 常量区 栈 堆
- C++ 128位 AES加密算法
- 2:编写虚幻引擎中的UC和C++代码
- hdoj 2076 时针分针夹角C语言实现
- C++链表(single-linked list)
- VC++2010工程中加入SplashScreen
- 从汇编层面深度剖析C++虚函数
- C语言(一)
- C++中const用法总结
- 2014华为上机题C++编程