不管是類中的成員還是普通變數或者物件的情況。
不過這裡討論的都是區域性變數,不是全域性變數。
1.內建型別
不管是int 還是 指標型別
沒有初始化的時候都是不確定的值,能夠訪問這個值,但是這個值是不確定的。
2.指標指向
如果乙個指標沒有初始化,那麼指向這個指標將直接使程式崩潰。
當然你如果動態分配乙個變數,返回那個指標,沒有初始化。應該屬於情況1,訪問那個指標指向的物件是得到乙個不確定的值。
3.類型別
這就要看這個有沒有預設實參了。
像string型別之所以會預設初始化為空字串"",是因為它的類定義就提供了這個預設引數,稱為類內初始值。
如果沒有的話,情形就是1,2.
C 直接初始化和複製初始化
在c 裡,物件初始化是乙個非常重要但又容易令人混淆的問題。這裡是自己的一些總結。一。初始化與賦值的含義 初始化 包括建立 或說定義 物件並且賦給初值。如果乙個物件只被建立而沒有被初始化,則該變數只能用於被賦值 賦值 擦除物件的當前值並用新值代替。二。內建型別 一 直接初始化 1.空初始化 即無引數無...
c 直接初始化與拷貝初始化
我們常見的幾種初始化的形式 string str1 first 拷貝初始化,編譯器允許把這句話改寫為string str first 但是string類必須有public的拷貝 移動 建構函式 string str2 10,a 直接初始化 string str3 str2 直接初始化 string ...
初始化 指定初始化
id alloc 物件的誕生過程,主要是從作業系統獲得一塊足夠大的記憶體,以存放該類的全部例項變數,並將其指定為存放記憶體物件的實力變數的位置。alloc方法同時將這塊記憶體全部設定為0。結果是 bool變數初始化為no,所有的int型別變數為0,float變數為0.0,所有的指標為nil.obje...