c 如何在乙個類中定義指向另外乙個類的指標

2021-08-20 23:20:25 字數 598 閱讀 1656

直接定義即可。比如已有乙個類class a, 再定義乙個類class b,這樣在b的定義中,就可以有乙個a*型別的成員變數。

比如class b

;這裡的b::a就是乙個a*型別的指標。

需要注意的是,要使用這種形式的定義,要麼a的定義在b的上方,要麼在b定義前加乙個a類的宣告。

如class a;

class b

;

二、

類名 *指標名;

如 在乙個類中定義指向另外乙個類的指標:

class a

追問

那如何給改指標分配動態記憶體?
追答

我是這麼做的:

pt = new b;

這個是在a的建構函式裡面定義的,別忘記在a的析構函式裡面: if(b)delete pt;

追問

thanks!如果b的建構函式有1個int型的引數,那就是pt = new b(5);對不對?那這個動態記憶體的分配能直接放在類裡面嗎?我試過不行啊,後來放到函式裡面動態分配才行。為什麼
追答

直接放到類裡面肯定是不行的,因為類裡面是不允許初始化的。

php 引入類 php如何在乙個類中引入另外乙個類

有時候需要在乙個類中呼叫另外乙個類裡面的方法,然後另外乙個類又需要呼叫當前類的方法,怎麼辦呢?可以直接引入類物件的方式呼叫另外乙個類的方法 示例如下 傳值方式 class a function b obj obj test class b function test echo test a new ...

如何在乙個VS的工程裡面呼叫另外乙個VS工程

1 我建立了兩個vs工程,第乙個工程要生成庫檔案給第二個工程呼叫,我想在第乙個工程生成庫檔案後,就可以直接呼叫下乙個工程,可以嗎?應該怎樣做了?將這二個工程新增到同乙個solution之後,你需要設定一下工程的依賴項 點解決方案的右鍵屬性設定 假如b要用到a的生成庫,那麼b的依賴項就是工程a。這樣設...

C 中如何定義乙個模板

如果兩個值相等,返回0,如果v1小返回 1,如果v2小返回1 int compare const string v1,const string v2 缺點 如果對每種希望比較的型別都不得不重複定義完全一樣的函式體,是非常繁瑣且容易出錯的。乙個函式模板就是乙個公式,可用來生成針對特定型別的函式版本。t...