#include<string>
#include<iostream>
using namespace std;
class Date
{
public:
Date(int f, int g, int h) :y(f), m(g), d(h) {};
int a() const//定义常成员函数
{ return y; }
int b() const {
//m++; //错误:常成员函数中不能改变类的数据成员变量的值,可以被const对象调用。
return m;
}
int c() const
{
cout << d << endl;
return d++;//cout如果在return前则无法cout
}
//普通成员函数
int f(int i) { return y + 1; }
private:
const int y;
const int m;
mutable int d=10;//这里我们要修改d的值所以d的值前应该用mutable修饰
};
int main()
{
const Date date(10,10,10); //常对象
//int day = date.day(); // 错误常对象不能调用非常成员函数
date.c();//常对象只能调用常函数
}
【C++】常对象与常函数
最新推荐文章于 2024-06-20 20:35:16 发布