uga-

C++の基本から勉強したほうがいい。
...
スーパークラスA、サブクラスB。Aのポインタを持つC、Bのポインタを持つD。
このCとDの関係が微妙だ。上の文だと解り難いけれどDはC+αぽい物なので、Cのサブクラスとして作りたい。しかしCを継承した場合ポインタはAのままとなってしまうので、Bのみが持つメンバ変数にアクセスできない。
CとD両方の上位クラスを作ろうかと思ったが、C(及びD)には

  • bool set_pointer(A(B) x);

という形のメンバ関数が(最も基本的な部分として)存在しており、ポインタ型の問題から逃れられない。。はてさて。。
...
と書いた瞬間に、テンプレートでスーパークラス書けば良いやんて事に気づく。アホさ加減に感動。