static在C/C++中的作用

C语言中 static 的作用:

  1. 文件作用域的全局变量

    static修饰一个全局变量时,这个变量只在定义它的文件内部可见,不会被其他文件访问。

  2. 静态局部变量

    在函数内部,static关键字确保局部变量的生命周期贯穿整个程序,而不是每次函数调用时重新初始化。这使得变量的值在函数调用之间得以保持。

  3. 静态函数

    static修饰的函数只能在定义它的文件内部调用,具有文件内部链接,防止与其他文件中的同名函数冲突。

C++语言中 static 的作用(包括C中的所有作用):

  1. 静态成员变量(C++独有):

    在类中,static修饰的成员变量属于类本身,而不是类的任何特定对象。这意味着所有对象共享这个变量的同一个实例。

  2. 静态成员函数(C++独有):

    static修饰的成员函数可以在不创建类的对象的情况下被调用,并且它们只能访问类的静态成员和静态成员函数。

相关推荐
fqbqrr2 小时前
2601C++,cmake与导入
c++
fqbqrr3 小时前
2601C++,编写自己模块
c++
molaifeng3 小时前
Go 语言如何实现高性能网络 I/O:Netpoller 模型揭秘
开发语言·网络·golang
崇山峻岭之间3 小时前
Matlab学习记录33
开发语言·学习·matlab
Evand J3 小时前
【2026课题推荐】DOA定位——MUSIC算法进行多传感器协同目标定位。附MATLAB例程运行结果
开发语言·算法·matlab
jllllyuz3 小时前
基于MATLAB的二维波场模拟程序(含PML边界条件)
开发语言·matlab
忆锦紫3 小时前
图像增强算法:Gamma映射算法及MATLAB实现
开发语言·算法·matlab
亲爱的非洲野猪5 小时前
Java锁机制八股文
java·开发语言
LawrenceLan5 小时前
Flutter 零基础入门(十二):枚举(enum)与状态管理的第一步
开发语言·前端·flutter·dart
charlie1145141916 小时前
从 0 开始的机器学习——NumPy 线性代数部分
开发语言·人工智能·学习·线性代数·算法·机器学习·numpy