c++ 中的 static 关键字用于修改变量、函数和类成员,指示编译器保留其作用域和存储持续时间。其用法包括:声明 static 变量以保留函数调用或对象销毁后的值。声明 static 成员变量以在类的不同实例之间共享数据。使用 static 函数提供类级功能,而无需创建类的实例。static 关键字的优点包括提高效率、增强可测试性,以及在需要保留状态、共享数据或提供类级功能时很有用。
C++ 中 static 的用法和作用
是什么
static 是 C++ 中的一个关键字,用于修饰变量、函数和类成员。它指示编译器在程序的整个生命周期内保留其作用域、存储持续时间和链接属性。
用法
变量
- 在函数内部声明 static 变量可在函数每次被调用时保留其值。
- 在类内部声明 static 变量可被类中的所有实例共享。
<code class="cpp">int main() { static int x = 10; // 保留函数调用之间的值 return 0; }</code>
登录后复制
函数
- static 函数不能访问非 static 成员和非 static 数据。
- static 函数可以被类外部访问,而无需创建类的实例。
<code class="cpp">class MyClass { public: static int add(int a, int b) { return a + b; } }; int main() { MyClass::add(1, 2); // 直接调用 static 函数 return 0; }</code>
登录后复制
类成员
- static 成员变量在类的所有实例之间共享。
- static 成员函数只能访问 static 成员变量和函数。
<code class="cpp">class MyClass { public: static int count = 0; // 静态类变量 static void increment() { count++; } }; int main() { MyClass::increment(); // 通过类名访问 static 函数 cout </code>
登录后复制
作用
static 关键字在以下场景中很有用:
- 保留状态:static 变量可以保留函数调用或对象销毁后的值。
- 共享数据:static 成员变量可以在类的不同实例之间共享数据。
- 提供类级功能:static 函数可以提供类级的功能,而无需创建类的实例。
- 提高效率:static 变量和函数可以节省内存,因为它们只在程序运行期间初始化一次。
- 增强可测试性:static 函数可以轻松地独立于类进行测试。
以上就是c++++中static的用法和作用的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:牧草,转转请注明出处:https://www.dingdanghao.com/article/449242.html