關於static物件

2021-08-29 08:40:01 字數 662 閱讀 9020

cpp **

#include

using

namespace std;  

class a  

~a()    

};  

a a(1);  

void f1()  

void f2()  

int main()  

由於自己對static物件儲存在

靜態資料區(data or bss)中,所以在昨天的筆試中想當然的認為都會初始化,但其實不是這樣。

在靜態資料區只是分配了空間而已,而對於乙個類的構造是有空間與構造兩個步驟的。

在乙個函式中定義乙個變數,是空間與構造同時進行。

而在靜態資料區,如果你不去碰它。永遠只是分配空間而已。

去ibm筆+面的收穫:自己的底層知識遠遠不夠。頂層概念也不清晰。平時有點自以為是了。老把自己當高手,純粹扯淡。

如果乙個題目abcd4個選項,別人能排除1個選項,而我水平高點能排除兩個選項,根據倒霉蛋原理,最後還是都會選乙個錯的答案,有什麼用,相反一些錯誤的思考會讓自己做錯乙個什麼都不懂的人憑直覺就能做對的題。所以真正的高手都是能排除3個選項的人。而我,還差得遠呢。

static物件都是放在bss中的,不管**中是否初始化。但估計對於有初始化語句的物件有額外的標誌。以引導建構函式發生。

static之物件導向

一 靜態資料成員子 includeusing namespace std class point int point num 0 定義靜態資料成員 int main 對於類的非靜態資料成員,每個類物件都有自己的拷貝。而對於靜態資料成員被當作是類的成員。就像上述例子中,雖然定義了4個物件,但是靜態資料...

物件導向 static 十四

1.static關鍵字及記憶體圖 class demo1 static class person 建立物件記憶體圖 2.static關鍵字的特點 a static關鍵字的特點 a 隨著類的載入而載入 b 優先於物件存在 c 被類的所有物件共享 舉例 咱們班級的學生應該共用同乙個班級編號。其實這個特點...

Java物件導向 static

static 靜態的 屬於物件的屬性和方法是動態的,相反屬於類的就是靜態的。靜態的用途 修飾類的成員變數,稱為靜態變數,靜態變數是屬於類的變數,可以使用 類名.變數名 訪問,在類的內部可以省略類名。靜態變數只有乙份,可以被全體物件共享!軟體中只有乙份的資料應該使用static修飾。靜態變數在類載入期...