C++语法(二十)常函数、常对象
1、常函数
常函数无法修改成员变量,除非这个成员变量用mutable修饰了。
#include <iostream>
using namespace std;class Person{
public:void change() const{//m_a = 100; // 常函数无法修改成员变量m_b = 100; // 除非这个成员变量用mutable修饰了}int m_a;mutable int m_b;
};void test(){Person p;p.change();
}int main() {test();return 0;
}
2、常对象
常对象无法修改成员变量,除非成员变量加了mutable修饰。常对象无法调用非常函数。
#include <iostream>
using namespace std;class Person{
public:Person(){}void change() const{}void func(){}int m_a;mutable int m_b;
};void test(){const Person p1;p1.change();//p1.m_a = 100; // 常对象无法修改成员变量p1.m_b = 100; // 除非成员变量加了mutable修饰//p1.func(); // 常对象无法调用非常函数
}int main() {test();return 0;
}
C++语法(二十)常函数、常对象相关推荐
- C++ 常函数 常对象 初步
1.常函数 如果不想让成员函数修改成员对象, 就将成员函数改为常函数, 成员函数的后面 加 const. 注意:必须在成员函数的声明和定义处同时加上 const 关键字 2. 常对象 比如 const ...
- 关卡二: JavaScript函数及对象
前言 在 Java 语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在 Javascript 中,我们也可以定义自己的类,例如定义 User 类.Hashtable 类等等. ...
- Java程序员从笨鸟到菜鸟之(二十九)javascript对象的创建和继承实现
JavaScript对象的创建 JavaScript中定义对象的几种方式(JavaScript中没有类的概念,只有对象): 1) 基于已有对象扩充其属性和方法: [html] view plainc ...
- 漫步数理统计二十九——函数期望
令X=(X1,-,Xn)′\mathbf{X}=(X_1,\ldots,X_n)^\prime表示某试验的随机变量,我们一般对X\mathbf{X}的函数感兴趣,表示为T=T(X)T=T(\mathb ...
- 通过100个单词掌握英语语法(二十二)give
[不规则动词: give,gave,given]给某人提供某物:What shall we give Mum for her birthday? They gave me flowers. Luke ...
- JavaScript-筑基(二十五)navigator对象(判断页面打开终端)、history对象
navigator对象包含有关游览器的信息,它有很多属性,我们常用的是userAgent,该属性可以返回由客户机发送服务器的user-agent头部的值. 下面前端代码可以判断用户那个终端打开页面,实 ...
- 立创eda学习笔记二十:查找相似对象和批量修改
这两个功能很实用,最简单的例子:本来已经画完了板子,但现在想要把所有电阻的丝印做小一点,板子很大元件很多,你一个一个改太浪费时间了. 可以先使用查找相似对象功能(注意这里不能使用查找对象功能),然后把 ...
- 【emWin】例程二十五:窗口对象——Iconview
简介: 图标视图小工具可用于基于图标的菜单,手持式设备(如移动电话或便携式管理器)常常需要使 用这种菜单.它显示一系列的图标,每个图标都可标注可选文本.图标视图小工具支持透明度及alpha 混合处理. ...
- 一天学完spark的Scala基础语法教程十、类和对象(idea版本)
- python写接口函数_python接口自动化测试二十:函数写接口测试
# coding:utf-8 import requests import re from bs4 import BeautifulSoup # s = requests.session() # 全局 ...
最新文章
- 幽默:程序员背后的心酸日常,你懂多少?
- mysql表空间被占用,同名表无法创建或导入
- python管道通信_Python进程通信之匿名管道实例讲解
- python画害羞的表情_用Python把你的朋友变成表情包
- 操作系统之I/O管理:1、I/O控制器、I/O控制方式(程序直接控制方式、中断驱动方式、DMA方式、通道控制方式)
- Linux下导入SQL文件
- Error: cannot allocate vector of size 88.1 Mb问题
- java 3000并发,还被面试官怼并发编程?来,吃点能量!Java并发编程技术
- 23-新建maven 项目
- PCB SQL SERVER 枚举分割函数(枚举值分解函数)
- 闲来无事实现个备忘录,到点提醒
- 细等线体cass_CAD中,刚打开一个文件,细等线体显示不出来,然后换个字体后在换回细等线体才正常显示,怎么回事?...
- 攻防世界-web- easyphp
- 2022-2028全球LED气球灯行业调研及趋势分析报告
- Unity3d简单的发牌效果
- CVPR 2022 | Adobe把GAN搞成了缝合怪!凭空P出一张1024分辨率全身人像
- xpath提取当当网数学书前十页信息
- 全球异地多方连线视频直播(效果截图)
- PowerOJ 1737 网络流24题之二 太空飞行计划问题(最大权闭合子图)
- STM32F407高级定时器TIM8_CH1N输出PWM配置
热门文章
- 令人敬畏的泰格伍兹 万维钢_使用SwiftUI创建令人敬畏的加载状态
- 水上飞机行业调研报告 - 市场现状分析与发展前景预测
- 【推荐】2020,2021网易数字+大会(云原生微服务+大数据数据库+网易AI实践集合+其他) - (共187份)
- python scapy2.3 在windows上的安装
- 【docker】虚拟化和docker容器概念
- perf常用用法简介
- virtualBox实现windows和Ubuntu之间的复制粘贴
- Python程序设计(第三版)约翰·策勒 编程练习课后答案(第二章)
- CNC五轴编程的全面总结
- [2021.8.18]深入理解PackageManagerService