全域性變數(或者屬性)的初始化問題

2022-09-11 08:18:13 字數 578 閱讀 2058

總結:定義的全域性變數(即類的屬性)——陣列、基本資料型別、其他引用型別變數,

1.定義變數的時候,立刻初始化,即靜態初始化;

public

class

test ;//

靜態初始化引用型別陣列

example e = ;

}class

example

}

2.只定義,最後在方法中進行初始化;

public

class

test02

}class

example

}

3、錯誤初始化操作(如下**報錯)

public

class

test03 ;

example e = new example[2];

e[0] = new example(2019,"小明");//

同理,陣列也不能這樣初始化操作

e[1] = new example(2018,"小紅");

}class

example

}

未初始化全域性變數

未初始化全域性變數,這名字就很直白,就是 c 程式中定義成全域性作用域而又沒有初始化的變數,我們知道這種變數在程式執行後是被自動初始化為 全0 的。編譯器編譯的時候會將這類變數收集起來集中放置到 bss 段中,這個段只記錄了段長,沒有實際上的內容 全是0,沒必要儲存 在程式被裝載時作業系統會為它分配...

關於未初始化全域性變數

前幾天發現未初始化全域性變數一些特性,後來在一篇部落格上發現有人說過這個問題 這是原博文位址 blog.csdn.net liuqiaoyu080512 article details 8455652 然後結合原博文,自己又做了幾個實驗 以下算是自己實驗一遍以後的總結 首先,自己曾經以為未初化的全域...

C 全域性變數和static變數初始化問題

全域性變數 檔案域中的靜態變數 類中的成員靜態變數在main函式執行前初始化 區域性變數中的靜態變數在第一次呼叫時初始化。c和c 的區別 區域性靜態變數 在c語言中是編譯期初始化並分配記憶體,故不能用變數給靜態區域性變數賦值,只能用常量。在c 中是第一次執行時初始化,因為c 引入了物件的概念,物件一...