在類中使用和非類中
非類中:
-
隱藏
舉例:
一個a.cpp文件,一個b.cpp文件。這個是a.cpp的內容:
#include<iostream> int g_a = 1; void fun() {}
這個a.cpp中的變量g_a和函數fun在b.cpp中是可以訪問且使用的。
加static後就對其他源文件(a.cpp之外的)隱藏了。 -
默認初始化爲0
備註:未初始化的全局靜態變量和局部靜態變量,以及未初始化的全局變量都初始值爲0,因爲都存儲在全局靜態存儲區 -
局部靜態變量生命週期不在僅是所屬函數,生命週期爲整個程序,但是作用域不變。
類中使用:
- 修飾數據成員:①不屬於任何類對象,屬於該類 ; ②在類外初始化
- 修飾成員函數:①不能用virtual、const聲明; ②無法訪問非靜態成員函數和非靜態數據成員 ; ③非靜態成員函數可以訪問靜態數據和靜態數據成員。