#include <iostream>
using namespace std;
struct Person
{
void Introduce() const
{
cout << "大家好,我是" << _name
<< ",今年" << _age << "岁。" << endl;
}
void Introduce_2()
{
cout << "大家好,我是" << _name
<< ",今年" << _age++ << "岁。" << endl;
}
std::string _name;
int _age;
};
int main()
{
Person p1{"志玲", 23};
p1.Introduce();
p1.Introduce_2();
p1.Introduce_2();
return 0;
}
可以看到Introduce_2修改了对象的成员数据,如果将第10行,修改如下
则编译会报错:
原因就是 Introduce()? 后面有个const修饰,Introduce() 就是常量成员函数