C 學習筆記2

2021-10-13 05:17:45 字數 896 閱讀 8342

菱形繼承示例

//定義乙個虛基類

;//繼承之前 加上關鍵字virtual變為虛繼承

//利用開發者指令提示可以檢視資料列印內容 c1/ dl reportsingleclasslayout 類名 檔名

![在這裡插入描述]

//從基類繼承過來的資料只有乙份vbptr指向vbtable

// virtual base pointer

// vbtable記錄指標偏移量

// 指標原位址+指標偏移量得到的資料能找到age

class

sheep

:virtual

public animal

;class

tuo:

virtual

public animal

;class

sheeptuo

:public sheep,

public tuo

;void

test01()

intmain()

C 學習筆記 2

ref 和out 都是是傳遞引用,out是返回值,兩者有一定的相同之處,不過也有不同點。使用ref 前必須對變數賦值,out不用。out的函式會清空變數,即使變數已經賦值也不行,退出函式時所有 out引用的變數都要賦值,ref引用的可以修改,也可以不修改。下面是使用 out和 ref進行陣列修改的例...

C 學習筆記(2)

定義 namespace a namespace a 系統會自動合併這兩個 使用時在前面加上using namespace a 或者a var來呼叫命名空間a中的變數和函式。wchar t雙位元組型變數,佔據2位元組,而char只佔據1位元組 wchar t wc l 中國 setlocale lc...

c 學習筆記 2

迴圈 while迴圈 計數控制迴圈 counter controlled loop 標記控制的迴圈 sentinel conrolled loop 在寫迴圈的過程中容易出現多一次或者少一次的錯誤 即差一錯誤 off by one error 計算減法 簡單 include include rand ...