C++-使用const对函数定义
使用const进行函数的定义
/* 使用const进行定义 */ #include <iostream> using namespace std; class A{ public: A(int i = 0):m_data(i) {} void print(void) const { //const表示类不能进行变化 // ++m_data; cout << m_data << endl; } private: int m_data; };
const 只读模式,外部的函数对类型不进行改变
/* ConstFunc使用实例 */ #include <iostream> using namespace std; class A{ public: void func1(void) const { cout << "常函数" << endl; // func2(); //错误 因为func1是const类型的 } void func2(void) { cout << "非常函数" << endl; m_i++; func1(); } private: int m_i; }; int main() { A a; a.func1(); a.func2(); const A a1 = a; //只读类型,外部不能改变其类型 // a1.m_i++; a.func1(); a.func2(); const A* pa = &a; pa->func1(); const A& ra = a; ra.func1(); }
const 根据函数的匹配度进行匹配
/* 构造const函数 */ #include <iostream> using namespace std; class A{ public: void func(int a = 0) const{ cout << "常函数" << endl; } void func(int a = 0){ cout << "非常函数" << endl; } private: int m_a; }; int main() { A a; a.func(); const A a1 = a; //const 匹配后面一个函数 a1.func(); }
每天更新pyQt5内容
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?