c 中static變數在main函式之前執行

2021-07-23 06:47:45 字數 703 閱讀 5903

c/c++語言中,在執行main的入口函式之前,是會首先執行一段**。

而對於全域性變數和static的初始化就是 在main函式之前執行的,例子如下:

[cpp]view plain

copy

#include 

#include  

class

static_name  

;  static

intstatic_print();  

private

:  static

inti_static_value;  

};  

intstatic_name:static_print()  

intstatic_name::i_static_value=static_name::static_print();  

intmain()    

執行結果為:

[cpp]view plain

copy

this is 

static

!!  

this is main_function()!!  

這就說明:

1.類中static變數是可以不在建構函式中初始化的,可以在類外面單獨初始化。

2.static變數初始化執行,是在main入口函式之前就完成的操作。

C 中static成員變數

1 static成員變數屬於類,不屬於某個具體的物件,即使建立多個物件,也只為static成員變數分配乙個記憶體 所有物件都是這個記憶體裡的statiic變數,如果對其做出修改也會影響到其他物件的使用 2 static成員變數必須在類外進行初始化 形如 type class name value i...

C 類中static變數

using system namespace param stathread static void main string args i console.writeline string.format j new class1 j console.read 上面的 是乙個告訴我的,讓我看看結果,我...

C和C 中static變數

c語言中static的變數 1 static區域性變數 a 靜態區域性變數在函式內定義,生存期為整個程式執行期間,但作用域與自動變數相同,只能在定義該變數的函式內使用。退出該函式後,儘管該變數還繼續存在,但不能使用它。b 對基本型別的靜態區域性變數若在說明時未賦以初值,則系統自動賦予0值。而對自動變...