UVM 8 4 2 根據字串建立乙個類

2021-07-03 16:08:31 字數 667 閱讀 4099

1.factory 根據字串建立類需要用到引數化的類:

2.在定義乙個類(my_driver)時,同時宣告乙個相應的registry 類及其變數:

1)建立例項時,把例項的指標和「my_driver」 的名字放在乙個聯合陣列global_tab 中。

2)上述基本就是uvm_*_utils 巨集所實現的功能,只是uvm_*_utils 巨集做的更多,更好。

3)me=new()應該只是為了name,不是為了真正的 記憶體中的例項。

3.當要根據類名「my_driver」 建立乙個my_driver 的例項,先從global_tab 中找到「my_driver」 索引對應的registry#(my_driver,「my_driver」)例項的指標me_ptr,然後呼叫me_ptr.inst = new()函式,最終返回me_ptr.inst。過程如下:

基本上就是這樣,只是真正的實現比這個複雜的多。

606 根據二叉樹建立字串

你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。示例 1 輸入 二叉樹 1,2,3,4 1 2 3 4 輸出 1 2 4 3 解釋 原本將是 1 2 4 3 在你省略所有不必要...

606 根據二叉樹建立字串

你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。示例 1 輸入 二叉樹 1 2,3 4 1 23 4 輸出 1 2 4 3 解釋 原本將是 1 2 4 3 在你省略所有不必要的...

606 根據二叉樹建立字串

你需要採用前序遍歷的方式,將乙個二叉樹轉換成乙個由括號和整數組成的字串。空節點則用一對空括號 表示。而且你需要省略所有不影響字串與原始二叉樹之間的一對一對映關係的空括號對。示例 1 輸入 二叉樹 1 2,3 4 1 23 4 輸出 1 2 4 3 解釋 原本將是 1 2 4 3 在你省略所有不必要的...