類和物件:
物件:一輛車,樹葉,乙個人。
組成:屬性,形為
物件的描述:乙個物件的描述過程。
類:就是物件的一次描述
組成:成員變數,成員方法(函式)
類的三大特點:封裝,繼承,多型
定義類:
class 類名
;注:類只是物件的模板(沒有分配儲存空間的)
封裝:將物件的成員對外界隱蔽方法
注:定義結構體型別:預設成員是對外公開的(公有的),
定義類型別,預設成員對外是私有的
1限定訪問方式:類成員對外的訪問的限定許可權
公有(public):成員對外界公開
保護(protected):成員對外不可訪問
私有(private):成員對外不可訪問
2、將隱式資訊進行非公有限定,如果類外需要訪問,可以通過公有介面
物件:類的一次例項化
定義物件: 類名 物件名;
注:分配儲存空間,只是分配成員變數,但共享方法
訊息:(引用成員或變數)
只需要向乙個物件傳送一次指令,此物件收到指令時就可自行完成此指令事件.
物件.方法()
物件指標:
類* 指標物件;
物件指標->方法();
類外:在類的外部去引用成員
類內:在定義類的內部去引用成員
this:自指標(指向自身成員) (隱蔽指標:只能在類內來使用)
類成員的作用域:類的定義範圍內。
類外實現定義方法,類內部只需要宣告即可:
class 類
;實現方法
返回值 類::方法(..)
構造方法(特殊):就是用分配儲存空間並初始化空間值
class 類
;注:1、構造方法與類名相同 2、沒有返回值 3、只要物件例項化(定義物件)時,系統會自動呼叫建構函式
4、不允許呼叫建構函式。
1、預設建構函式:當使用者沒有為某個類定義建構函式時(由於第3點原因),編譯就會預設新增如下建構函式
類名(){}
問:建構函式什麼呼叫?
當物件例項化時
過載構造方法:當乙個構造方法不滿足初始化時,可以實現過載
預設複製/拷貝建構函式:
類名(類名&)
類名 s1=s2;
//s2已經例項化,將s2拷貝一分記憶體到s1中(呼叫拷貝建構函式)
或者 類名 s1(s2);
物件引用:物件取別名
類& 別名=物件;
物件陣列:
類 陣列名[10]=;
初始化列表:對成員變數簡單賦值
class 類
限定符成員 a;
成員 b;
成員 c;
}注:1只能在定義建構函式中使用初始化列表。
2只能過成員變數名來初始化
問:多個構造方法,怎樣確定呼叫建構函式的?
在例項化物件時,通過傳遞例項殘表來確定
隱式型別轉換原則:
1、如果是char-->int
short->int
float-->double
int+float---->double
char+short--->int
short+float->double
嵌入式每日學習心得2017 07 08
linux系統管理技術 linux系統的使用方式 1 桌面環境操作 傻瓜化,但功能不夠強大,某些操作效率很低甚至無法完成 2 shell命令 專業高效,但非常不直觀友好,學習難度大,需要記憶命令 要成為unix linux系統骨灰級玩家,必須常用掌握shell命令!常用的桌面環境 gnome kde...
嵌入式每日學習心得2017 07 10
對於linux相關命令,再次作一點總結,今天是上半部分,明天是下半部分 關於布置的小問題 問題1更改使用者名稱 usermod l newusername username 問題2更改主機名 hostname newname vi etc sysconfig network 問題3su和su 的區別...
嵌入式每日學習心得2017 07 13
進製 表數方式,是幾進製,就逢幾進一 十進位制 逢十進一 9 0 123 10 百 十 個 1 3 0 二進位制 逢二進一 1 0 2 八進位制 逢八進一 7 0 0123 八 十 3 8 0 2 8 1 1 8 2 八 二 001 010 011 十六進製制 逢十六進一 f a 9 0 0x321...