入れ子になったクラスの参照 – プログラミング – Home

入れ子になったクラスの参照
 
通知
すべてクリア

[解決済] 入れ子になったクラスの参照


華月
 華月
(@華月)
ゲスト
結合: 22年前
投稿: 2
Topic starter  

華月と申します。

ClassAとClassBがそれぞれ、お互いのクラスのポインタを持っている状態になるプログラムを
作成したところ、ClassBからClassAを認識することが出来ませんでした。
何が行けなかったのでしょうか?
御教授頂けましたら光栄です。

(CClassAのヘッダファイル(簡略化))
#include ClassB.h
class CClassA : public CObject
{
public:
CClassB* m_pClassB;
}

(CClassBのヘッダファイル(簡略化))
#include ClassA.h
class CClassB : public CObject
{
public:
CClassA* m_pClassA;
}

(実際はCDialogで互いのダイアログを参照しています)


引用未解決
トピックタグ
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 23年前
投稿: 1301
 

---- B ----
class A;

class B {
A* m_pA;
};

---- A ----
class B;

class A {
B* m_pB;
};


返信引用
島
 島
(@島)
ゲスト
結合: 23年前
投稿: 238
 

>ClassBからClassAを認識することが出来ませんでした。
認識できないとあなたが判断したわけを説明してください。例えばこういうコードで
コンパイラーがこういうエラーを出したとか、こういうリンクエラーが出るとか、
何が起きているのか読み手に分らなければ、的確な判断が出来ないとは思いませんか?

>(実際はCDialogで互いのダイアログを参照しています)
だそうですが、提示した(簡略化したと主張する)ソースの問題点が CObject 派生の
クラス同士の相互参照として説明できるということが本当に確実だとどうやって確認
なさったのでしょうか?


返信引用
華月
 華月
(@華月)
ゲスト
結合: 22年前
投稿: 2
Topic starter  

回答ありがとうございました。

επιστημη さんの方法で抜けられました。
どういう動作なのか、調べてみます。

島さん>
質問の形式がいけなかったようですね、以後気をつけさせていただきます。
簡略化に関しては、同プログラムを作成し、動かしてみてコンパイルにて確認しました。


返信引用
島
 島
(@島)
ゲスト
結合: 23年前
投稿: 238
 

>簡略化に関しては、同プログラムを作成し、動かしてみてコンパイルにて確認しました。

失礼な物言いで申し訳ありませんでした
(一言現象は確認済みですと付け加えていただければ余計な事は言わなかったのですが)


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました