c++ primer 第二章閱讀筆記
變數和基本型別
● 切勿混用帶符號型別和無符號型別,當帶符號型別取值為負數時候,帶符號數會自動轉為無符號型別
● 十進位制的字面形是有符號型別,八進位制(以0開始),十六進位制(以0x或0X開始)可以是有符號型別
,也可以是無符號型別
● 浮點形字面形是一個double
● 單引號為字元自面型,雙引號為字串字面型
● 注意:初始化不是賦值,初始化的含義是建立變數的時候賦予其一個初始值,而複製的含義是把物件當
前的值擦除,而以一個新的值來代替。
●
變數初始化
● 列表初始化
● 預設初始化
● 區別變數的定義與初始化
● c++是一種靜態型別的語言,其含義是在編譯階段檢查型別。其中檢查型別的過程稱為型別檢查。
● 複合型別
●
●
引用
● 引用只能繫結在物件上,而不能與字面值或某個表示式的計算結果繫結在一起
● 引用型別的初始值只能是一個物件,並且只能是一個int型的物件。
指標
● 指標的型別要和所指向物件的型別一致,不然報錯。
● 如果指標指向了一個物件,則允許使用解引用符(*)來訪問該物件。(解引用操作僅僅適用
於那些確實指向了某個物件的有效指標)
● 注意:變數未初始化和指標未初始化在除錯中是很困難的,因此需要確認初始化所有的指標。
● void*指標
●
●
指標的兩種寫法
●
●
int* p 或者int *p
指標與引用的區別
●
●
是一種特殊的指標型別,可以存放任意物件的地址。
引用本身並不是一個物件,而指標本身是一個物件。
const
● 如果想在多個檔案之間共享const 物件,必須在變數的定義之前新增extern關鍵字。
● 對const的引用,與普通的引用不同的是,對常量的引用不能被用作修改它所繫結的物件。
● 指向常量的指標,類似與常量的引用,指向常量的指標不能用於改變其所指物件的值。
● 指向常量的引用與指向常量的指標,共同點在於並沒有要求所指物件必須是一個常量,只是要
求不能通過引用或指標改變物件的值,並沒有規定那個物件的值不能通過其他途徑改變。
● 常量指標,本身是一個常量,但是不意味著不能通過指標修改其所指的物件的值。
● 重點:
●
●
頂層和底層const
constexpr 和常量表示式
● 常量表示式,是指值不會改變並且在編譯過程就能得到計算結果的表示式。
● 包括(1.字面值。2.用常量表示式初始化的const物件也是常量表示式。)
相關文章
- C++ primer Plus學習筆記(第二章)C++筆記
- C++ Primer筆記C++筆記
- C++ primer 筆記C++筆記
- C++ Primer 第二章 學習筆記及習題答案C++筆記
- C++ Primer 讀書筆記 - 第一章C++筆記
- 《C++ Primer》筆記-#include,#ifndefC++筆記
- 閱讀筆記筆記
- 《C++ 沉思錄》閱讀筆記——代理類薦C++筆記
- 《C++ Primer》讀書筆記(第一章 開始)C++筆記
- 【閱讀筆記:字典】筆記
- gdbOF閱讀筆記筆記
- 閱讀筆記03筆記
- 閱讀筆記02筆記
- 閱讀筆記8筆記
- 閱讀筆記1筆記
- 閱讀筆記5筆記
- 閱讀筆記4筆記
- 閱讀筆記3筆記
- 閱讀筆記7筆記
- 閱讀筆記2筆記
- JDK原始碼閱讀:Object類閱讀筆記JDK原始碼Object筆記
- 《Clean Code》閱讀筆記筆記
- Dependencies for Graphs 閱讀筆記筆記
- javascript閱讀筆記01JavaScript筆記
- #EffectiveJava筆記#閱讀心得Java筆記
- 閱讀影片方法筆記筆記
- 《快速閱讀術》讀書筆記筆記
- JDK原始碼閱讀(5):HashTable類閱讀筆記JDK原始碼筆記
- JDK原始碼閱讀(4):HashMap類閱讀筆記JDK原始碼HashMap筆記
- JDK原始碼閱讀:String類閱讀筆記JDK原始碼筆記
- MapReduce 論文閱讀筆記筆記
- ArrayList原始碼閱讀筆記原始碼筆記
- CopyOnWriteArrayList原始碼閱讀筆記原始碼筆記
- SiamRPN++閱讀筆記筆記
- Raft: 一點閱讀筆記Raft筆記
- 《思維力量》閱讀筆記筆記
- Flownet 2.0 閱讀筆記筆記
- Koa 原始碼閱讀筆記原始碼筆記