VMM中各個類的建構函式 new的引數

2021-05-21 19:05:09 字數 1001 閱讀 6150

vmm_data的派生類的new函式中,只是用靜態的log去初始化訊息服務視窗和通知視窗。vmm_data的stream_id和transactor相關,因此stream_id由transactor給出。同理,data_id 由generator在每產生乙個產品的時侯increase。

function new();

super.new(log);

endfunction

vmm_xactor基類已經準備好了vmm_log, vmm_notify介面,無需在派生類中進行額外處理。vmm_xactor的派生類在通過new建立物件的時侯,對stream_id進行賦值,以及inte***ce,name, instance

function new(string inst, int stream_id, chan_name in_chan=null, virtual xxif.tb if);

super.new("***", inst, stream_id);

if (in_chan == null) begin

in_chan = new("*** input channel",inst},

end

this.out_chan = out_chan;

this.if = if;

endfunction

類似的,vmm_atomic_gen產生generator的new函式如下

new(string inst, int stream_id, chan_name out_chan=null);
vmm_env自動給出了自己的log和notify。擴充套件類只需要在new中加上乙個virtual inte***ce

function new(virtual ***.if  if);   

super.new();

this.if=if;

endfunction

c 中的new 類建構函式 new

我們都知道在例項化乙個類時會使用這個類的 init 方法,但是在真實情況中類的例項化是分成兩個階段的,第一階段是使用該類的 new 方法例項化乙個物件,第二階段才是使用物件的 init 方法進行初始化。由於很多時候,第乙個階段被我們忽略了,所以看起來例項化類時只使用了 init 方法。既然在例項化類...

建構函式使用new的類

如果類使用new運算子來分配類成員指向的記憶體,在設計時應採取一些預防措施 應牢記這些規則,這是因為編譯器並不知道這些規則,因此無法發現錯誤 對於指向的記憶體是由new分配的所有類成員,都應在類的析構函式中對其使用delete,該運算子將釋放分配的記憶體 如果析構函式通過對指標類成員使用delete...

建構函式 new與this的解釋

1.什麼是建構函式?構造,就是初始化的意思 建構函式,是指 結合new建立物件 並 初始化物件裡各種屬性的 函式 在 new 物件時,跟在 new 後面的函式 就叫建構函式 2.a.命名規範 首字母都大寫,且一般為名詞 b.用法 通過new關鍵字來呼叫 強調 c.用法 為 new 關鍵字建立的空物件...