關於建構函式,也許你不知道的

2021-05-11 09:30:43 字數 350 閱讀 9343

首先看段**:

分析總結:

為什麼使用1和2兩種不同的建構函式,執行的時間有那麼大的差距,2的執行時間差不多是1的兩倍

在我的機器上1的時間是313 2的時間是625

原來建構函式中蘊含了很多的奧秘:

首先在建構函式中,在執行函式體之前(注意)還有很多隱藏的操作

如果有初始化列表,則先執行初始化列表,再進入執行建構函式體

對於沒有在初始化列表中出現的類成員,也會執行預設的建構函式

即所有的成員變數在執行建構函式體之前已經有了初始值,這也就是為什麼常量型或者引用型的變數

的初始化必須放在初始化列表裡。而對於類成員變數放在初始化列表是為了減少不必要的重複賦值

你也許不知道的 define用法

from 最近看com相關的資料,看到ccmdtarget實現com介面的時候,去讀了一些巨集的定義,在afxdisp.h標頭檔案中 define begin inte ce part localclass,baseclass class x localclass public baseclass ...

Delphi 你不知道的函式

技術交流,dh講解.在sysutils.pas有幾個函式,以前我也沒有看見過,今天看原始碼的時候無意間發現了.function gdal longword type tdvclal array 0.3 of longword pdvclal tdvclal var p pointer a1,a2 l...

一些你也許不知道的 define 用法

define conn x,y x y define tochar x x define tostring x x x y表示什麼?表示x連線y,舉例說 int n conn 123,456 結果就是n 123456 char str conn asdf adf 結果就是 str asdfadf 怎...