c++是一門靜態型別語言,在編譯時會作型別檢查。
c++中初始化不是賦值。
宣告和定義:
extern關鍵字可以用來宣告變數名而不定義; extern宣告不是定義,也不分配儲存空間。
extern int i;
int i;
extern double pi=3.1416; 只有當extern宣告位於函式外部時,才可以有初始化式。
在c++中,變數必須且僅能定義一次,而且在使用變數之前必須定義或者宣告變數。
任何在多個檔案中使用的變數都需要有與定義分離的宣告。在這種情況下,乙個檔案含有變數的定義,使用該變數的其他檔案則包含該變數的宣告(而不是定義)
const:
1.const物件:常量在定義後就不能被修改,所以定義時必須初始化。
const物件預設為檔案的區域性變數:在全域性作用域宣告的const變數是定義該物件的檔案的區域性變數,此變數只存在與那個檔案中,不能被其他檔案訪問; 通過指定const變數為 extern,就可以在整個程式中訪問const物件。
引用: 引用只是物件的另一名字.
const引用是指向const物件的引用, 非const引用是指向非const型別的引用。
const int ival=1024;
const int &refval=ival; (ok)
int &ref2=ival; (error)
非const引用只能繫結到與該引用同型別的物件;const引用則可以繫結到不同但相關的型別的物件或者繫結到右值。
int i=12;
const int &r =42;
const int &r2=r+i;
typedef: 用來定義型別的同義詞
typedef double wages; // wages is a synonym for double
列舉:列舉成員值可以是不唯一的,不能改變列舉成員的值,列舉成員本身就是乙個常量表示式。
列舉型別的物件的初始化或賦值,只能通過其列舉成員或同一列舉型別的其他物件來進行。
使用class關鍵字來定義類,成員預設訪問方式是private 使用struct關鍵字來定義類,成員預設為public
C primer第二章學習
引用 引用就是給乙個已知的物件重新附了乙個新的名字,在引用初始化的時候,程式把引用和他的初始值繫結在一起。定義了乙個引用之後,所有對其的操作都是對與其繫結的物件上進行的 因為引用不是物件,那麼不能對引用直接賦值 指標 指標首先是乙個物件,允許對指標賦值和拷貝,且在他的生命週期中可以指向不同的物件。指...
C primer 第二章學習
基本內建型別 型別 無符號變數注意事項 取模 不要混用 字面值常量 變數 定義變數可以連續定義 變數的初始化方式 初始化與賦值之間的區別 如果不主動初始化,會進行預設初始化,以及預設初始化會發生的錯誤 問 如果變數先定義,後賦值,算作賦值還是初始化?宣告與定義的區別 識別符號 字母數字下劃線組成 字...
c primer 學習筆記(第二章)
第二章 變數和基本型別 2.1基本內建型別 基本內建型別中,因為位數的不同,這些型別所表示的最大最小值也因機器的不同而不同。即 c 基本資料型別的儲存空間依機器而定 型別含義 最小儲存空間 bool 布林型 char 字元型8bit wchar t 寬字元型 16bit short 短整型16bit...