statickeyword于C和C++用法

一、C语言statickeyword两个使用

1)、一个功能修改内部使用的变量,函数内的静态变量。这些变量的寿命比功能不再,它是具有一定的函数“状态”,使用静态变量的作用通常是不可重入。也不是线程安全的,实例strtok()

2)使用文件级(体外),修饰变量或函数,变量该变量或函数仅仅能在文本可见,其它文件看不到,也訪问不到该变量或函数。

二、C++语言的statickeyword的四种使用方法

因为C++引入了class,在保持与C语言兼容的同一时候。statickeyword又有了两种新使用方法:

3)、用户修饰class的数据成员,即所谓“静态成员”。这样的数据成员的生存期大于class的对象(实体/instance)。静态数据成员是每一个class有一份。普通数据成员是每一个iinstance有一份,因此也分别叫做class variable和Instance variable。

4)、用于修饰class的成员函数,即所谓“静态成员函数”,这样的成员函数仅仅能訪问class variable或其它静态程序函数,不能訪问instance variable或者instance method.

    

         这些类型可以相互使用组合,实例C++会员功能(不管static仍是instance)我们都能够有自己的局部静态变量(使用上述方法1)。供class template和function template,间static与真实对象的数目template instantiation(模板与现代化)相关。

原文地址:https://www.cnblogs.com/yxwkf/p/4852320.html