当前位置: 首页 > news >正文

十二.理解Const关键字

1.Const对象

被const关键字修饰的对象,对象指针或对象引用

const User user;const User* pt = &user;const Use& pr = user;

2. 常函数

在类成员函数的形参表之后,函数体之前加上const关键字,该成员函数的this指针即具有常属性

class 类名

{

返回类型 函数名(形参表) const {

函数体;

}

}

// 非常函数  --》  没有const修饰
void getInfo(/* 隐藏一个 Integer* this  */)
{}// 常函数  --》 有const修饰
void getInfo(/* 隐藏一个 const Integer* this  */) const
{}

原型相同的成员函数,常版本和非常版本构成重载

  • 非 常对象优先选择非 常版本,如果没有非常版本,也能选择常版本

class User
{public:
void setInfo(int age,const char* name){this->age = age;strcpy_s(this->name, name);};// 非常函数  --》  没有const修饰
void getInfo(/* 隐藏一个 Integer* this  */)
{cout << "getInfo ..." << endl;
}// 常函数  --》 有const修饰
void getInfo(/* 隐藏一个 const Integer* this  */) const
{cout << "getInfo const ..." << endl;
}    private:int age;char name[256];}int main()
{User user;  // 非 常对象user.setInfo(20,"wyd");user.getInfo();   //  cout << "getInfo ..." << endl;
}
  • 常 对象只能选择常版本

int main()
{User user;  // 非 常对象user.setInfo(20,"wyd");user.getInfo();   //  getInfo ...cout << "------------------" << endl;const User u2 = user;  // 常 对象u2.getInfo();   // getInfo const ...
}

在常函数内部无法修改成员变量的值,除非该成员变量被mutable关键字修饰

http://www.xdnf.cn/news/933085.html

相关文章:

  • JS Day04
  • Polarctf2025夏季赛 web java ez_check
  • 进程优先级
  • ffmpeg(五):裁剪与合并命令
  • 二叉树“倒着看”:层次遍历的反向打开方式
  • 分库分表的取舍
  • 禅道18.2集成LDAP
  • mac:大模型系列测试
  • 原型对象(Prototype)详解
  • BeckHoff_FB --> SET_SNB 功能块
  • Pyppeteer企业级爬虫实战:从动态渲染到反反爬突破(2025终极指南)
  • Day 21
  • 华为OD机考-机房布局
  • LLMs基础学习(八)强化学习专题(1)
  • 用 Lazarus IDE 写一个邮件客户端软件,能收发邮件,编写邮件
  • Django知识-视图
  • Go语言--语法基础5--基本数据类型--输入输出(1)
  • 【Go语言基础【17】】切片:一种动态数组
  • 如何利用 OpenCV 进行实时图像处理与对象检测
  • LeetCode - 560. 和为 K 的子数组
  • 持续交付的进化:从DevOps到AI驱动的IT新动能
  • 博图 SCL 编程技巧:灵活实现上升沿与下降沿检测案例分享(上)
  • Bootstrap 5学习教程,从入门到精通,Bootstrap 5 图像形状(Image Shapes)语法知识点及案例代码(8)
  • 基于 Transformer robert的情感分类任务实践总结之三——FGM
  • 从代码学习深度强化学习 - 多臂老虎机 PyTorch版
  • 【深度学习|学习笔记】自监督学习(Self-Supervised Learning, SSL)在遥感领域中的典型应用案例及其在小样本学习中的作用,附代码。
  • LeetCode --- 452周赛
  • 高保真组件库:按钮
  • GitHub 趋势日报 (2025年06月07日)
  • Langgraph实战-自省式RAG: Self-RAG