当前位置:首页 C++ > 正文

c++中static的作用和用法

作者:野牛程序员:2023-06-27 10:41:14 C++阅读 2591

在C++中,关键字static具有多种用途和作用。下面是对于static关键字常见用法的解释:

  1. 在函数内部使用static

    • 在函数内部声明的static变量具有静态存储持续性(static storage duration),这意味着它们在程序执行期间保持存在,而不是在每次函数调用时重新创建。

    • static变量的作用域仅限于声明它的函数,但是变量在函数调用之间保持其值,可以用于跨多次函数调用共享数据。

    • static修饰符也可以用于函数声明,将函数的链接属性设为内部链接(internal linkage),使其只能在声明它的源文件中可见,而在其他源文件中是不可见的。

  2. 在类中使用static

    • 在类中声明的static成员变量是属于类本身的,而不是类的实例。这意味着无论创建多少个类的实例,static成员变量只有一份拷贝。

    • static成员变量在类的所有实例之间共享,可以用于表示类的共享数据或者计数器等。

    • static成员函数是属于类本身的,而不是类的实例。它们不能访问非静态成员变量,只能访问静态成员变量和其他静态成员函数。可以直接通过类名调用静态成员函数,而无需创建类的实例。

  3. 在文件中使用static

    • 在文件作用域内声明的static全局变量或函数具有内部链接属性,只在声明它们的文件中可见,而在其他文件中是不可见的。

    • static全局变量和函数的作用域仅限于声明它们的文件,可以用于限制其它文件对于特定标识符的访问。

这些是static关键字的常见用法,每种用法都有不同的语义和作用范围。根据具体的使用场景,static可以提供数据共享、限制标识符的可见性以及控制对象的生命周期等功能。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击