const对象只能调用const成员函数:
#include
usingnamespacestd;
classA
{
public:
voidfun()const
{
cout<<"const 成员函数!"<
输出:const 成员函数!
但是如果把第以1个fun注释掉就会出错:error C2662: “A::fun”: 不能将“this”指针从“const A”转换为“A &”。
但是const成员函数可以被非const 对象调用:
#include
usingnamespacestd;
classA
{
public:
voidfun()const
{
cout<<"const 成员函数!"<
该段代码输出:const 成员函数!
当然非const对象可以调用非const成员函数。