宣告 初始化和例項化的區別

2022-02-02 00:56:54 字數 512 閱讀 9378

我算是剛入門的菜鳥,今天說下宣告、初始化和例項化的區別和使用,如有不對的地方歡迎各位指正。

宣告是指使用乙個物件的時候,先定義屬於哪個型別並,比如string _str;

_str是宣告(定義)了乙個string型別的物件。

初始化可以理解為給宣告的物件賦值的過程。string _str ="hello";

_str現在已經被初始化了,例項化後它具有「hello」這個值。

例項化是類用到的,a a = new a();當new的時候為物件分配記憶體,這個過程是物件的例項化。

總結:宣告,只生成物件不賦值的過程。

初始化,是給物件賦值的過程。

例項化,是使用new為物件分配記憶體的過程。

int i;//沒有預設值

int j=i+2; 這樣編譯不通過,使用了未賦值的i。

static int i;//static時才有預設值

int j=i+2; //j = 2

當static int i;為靜態的時候i才會被賦預設值。

定義 宣告 初始化 賦值的區別

變數宣告 extern int a 只宣告一下這個變數,會在別處定義的 1變數定義 int a 說明該變數在記憶體中的位置和大小,宣告加定義 1變數初始化 int a 7 定義時給變數乙個值 1變數賦值 a 2 把變數原有的值擦除,重新給乙個值 1c 中的左值 lvalues 和右值 rvalues...

變數定義 宣告 初始化

變數定義就是告訴編譯器在何處建立變數的儲存,以及如何建立變數的儲存。變數定義指定乙個資料型別,幷包含了該型別的乙個或多個變數的列表,如下所示 type variable list 在這裡,type 必須是乙個有效的 c 資料型別,可以是 char w char int float double bo...

C 陣列的概念和宣告 初始化

陣列是乙個儲存相同型別元素的固定大小的有順序的集合。陣列是用來儲存資料的集合,通常認為陣列是乙個同一型別變數的集合。陣列也是一種資料型別,陣列是引用型別 1.1陣列的型別 一維陣列 二維陣列 多維陣列 交錯陣列 1.2簡單陣列 1.2.1陣列的宣告 資料型別 陣列名稱 通過陣列的宣告,明確這個陣列中...