【C++】类与对象(中)_7.const成员函数

7.const成员

7.1 const修饰类的成员函数

将const修饰的类成员函数称之为const成员函数,const修饰类成员函数,实际修饰该成员函数隐含的this指针,表明在该成员函数中不能对类的任何成员进行修改。

我们来看看下面的代码

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
using namespace std;
class Date
{
public:
	void Display()
	{
		cout << "Display ()" << endl;
		cout << "year:" << _year << endl;
		cout << "month" << _month << endl;
		cout << "dat" << _day << endl;
	}
	void Display() const
	{
		cout << "Display () const" << endl;
		cout << "year:" << _year << endl;
		cout << "month:" << _month << endl;
		cout << "dat:" << _day << endl << endl;
	}
private:
	int _year; //年
	int _month;//月
	int _day;  //天
};

void Test()
{
	Date d1;
	d1.Display();

	const Date d2;
	d2.Display();
}

请思考下面的几个问题:

  1. const对象可以调用非const成员函数吗?
  2. 非const对象可以调用const成员函数吗?
  3. const成员函数内可以调用其它的非const成员函数吗?
  4. 非const成员函数内可以调用其它的const成员函数吗?
相关推荐
小c君tt7 分钟前
qt/C++面试题自用学习(更新中)
c++·qt·学习·面试
jerry20110811 分钟前
R语言之环境清理
开发语言·r语言
Tanecious.16 分钟前
机器视觉--Python补充知识
android·开发语言·python
難釋懷21 分钟前
bash的特性-命令和文件自动补全
开发语言·bash
胡斌附体23 分钟前
qt designer 创建窗体选择哪种屏幕大小
开发语言·qt
ZStack开发者社区1 小时前
ZStack文档DevOps平台建设实践
java·大数据·开发语言·devops
强化学习与机器人控制仿真1 小时前
ROS & ROS2 机器人深度相机激光雷达多传感器标定工具箱入门教程(一)
开发语言·人工智能·stm32·深度学习·机器人·自动驾驶
Hello.Reader1 小时前
快速启动 Rust + WebAssembly 项目
开发语言·rust·wasm
秋书一叶1 小时前
Java工具类——实体类列表写入excel
java·开发语言·excel
愚润求学1 小时前
【专题刷题】双指针(三):两数之和,三数之和,四数之和
c++·笔记·leetcode·刷题