#include <iostream>
#include <string>
using namespace std;
class A
{
public:
A(){}
void print() const //const成员函数无法修改成员变量,原因是这里的this指针是一个(const A* const)型指针,无法改变其指向的值。
{
// m_a = 1;
cout << m_a << endl;
}
void setData(int a)
{
m_a = a;
}
private:
int m_a;
};
int main()
{
const A *a = new A;
A *b = new A;
// a->setData(1); //const对象无法访问非const成员函数
a->print();
b->setData(10); //非const对象可以访问const成员函数和非const成员函数
b->print();
delete a;
delete b;
}
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交