news 2026/8/28 7:41:34

深入理解C++static 关键字修饰类的成员函数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
深入理解C++static 关键字修饰类的成员函数

static修饰类的成员函数,称为类的静态成员函数

它属于类本身,而不是仅仅属于类的某个具体对象。

它没有this指针,所以不能访问非静态成员变量,只能访问类的静态成员变量和该类的其它静态成员函数。

但是类的普通非静态函数也可以调用类的静态函数。参见如下代码:

#include <iostream> class MyClass { private: int normalVar = 10; // 非静态成员 static int staticVar; // 静态成员 public: // 静态成员函数 static void staticFunc() { // normalVar = 20; // ❌ 编译报错!不能直接访问非静态变量 staticVar = 20; // ✅ 正确,可以访问静态变量 std::cout <<"staticFunc(): staticVar :" << staticVar << std::endl; // normalFunc(); // ❌ 编译报错!不能直接调用非静态函数 } void normalFunc() { // 普通函数可以随意调用静态函数(反过来是可以的) std::cout << "normalFunc(): call staticFunc() :" << std::endl; staticFunc(); // ✅ } }; // 静态成员变量必须在类外单独定义初始化 int MyClass::staticVar = 0; int main() { MyClass class1; class1.staticFunc(); class1.normalFunc(); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/28 7:39:14

微服务介绍:单体架构发展到微服务架构

单体架构与微服务架构对比&#xff1a;Spring Cloud 微服务入门指南— 1.1 什么是单体架构 单体架构&#xff08;Monolithic Architecture&#xff09; 是指把应用的所有功能模块全部打进同一个程序里&#xff0c;部署后跑在同一个进程中的架构模式。它是传统软件开发中最常见、…

作者头像 李华
网站建设 2026/8/28 7:37:51

数据流水线跑崩后才明白:CodeWhisperer 安全扫描发现的 4 个漏洞,每个都值一堂 AI 课

数据流水线跑崩后才明白:CodeWhisperer 安全扫描发现的 4 个漏洞,每个都值一堂 AI 课 上周二,我刚把新写的数据处理脚本推上测试环境,监控就炸了--日志里密密麻麻的 error,RDS 连接被拒绝。我查了半天,原来是一个环境变量没设对导致密钥直连失败。更糟的是,几分钟后 CodeWhisp…

作者头像 李华
网站建设 2026/8/28 7:37:06

零基础团队数学建模竞赛逆袭指南:从心态到论文的百日实战

1. 从“零”到“一”&#xff1a;数学建模竞赛的本质与心态准备每年&#xff0c;当“数学建模竞赛”的报名通知发布时&#xff0c;总能看到两类同学&#xff1a;一类是数学、计算机专业的“科班生”&#xff0c;他们摩拳擦掌&#xff0c;准备大展身手&#xff1b;另一类则是来自…

作者头像 李华
网站建设 2026/8/28 7:36:51

智慧园区定位系统如何集成?千寻位置FindS标准接口对接指南

智慧园区项目通常同时建设门禁、视频、作业票、巡检、能耗和数字孪生系统。定位能力如果没有被放进这些系统的日常流程&#xff0c;就容易成为一张"只看得到点、不产生动作"的地图。千寻位置FindS的集成价值&#xff0c;在于把人员、车辆和区域事件变成其他业务系统可…

作者头像 李华
网站建设 2026/8/28 7:35:58

从暴力到最优:三道 C 语言入门题的解法思路

做算法题有个挺有意思的规律&#xff1a;题目越简单&#xff0c;越能看出思路的差距。暴力解法往往很快就能写出来&#xff0c;但想出更优雅的解法&#xff0c;可能需要多琢磨一会儿。下面这三道题都是 LeetCode 上的简单题&#xff0c;我把自己第一次做时的思路和后来学到的更…

作者头像 李华
网站建设 2026/8/28 7:35:14

AI工程化落地指南:从RAG知识库到可验证的问答系统

在讨论“Silicon Valley sees AI as the solution – for everyone else”这类话题时&#xff0c;一个很容易被忽略的事实是&#xff1a;硅谷把 AI 当作基础设施来投资&#xff0c;是因为它拥有同时解决算力、数据、人才和试错成本四件事的条件。而硅谷之外的普通团队所面对的现…

作者头像 李华