クラス内部のメンバは全てstaticとその他に分けるべきだね
例えばtest_classがあるとして
test_class::static_member_class smc;
//staticなメンバクラスやメンバタイプはインスタンスが必要ない

test_class tc;
tc.nonstatic_member_class nsmc;
//staticでないメンバクラスやメンバタイプはインスタンスが必要

でstaticでないメンバクラスにはコンストラクト時などあらゆるメソッドに
生成もとclassへのポインタ、parentポインタが渡される。
これはメンバクラス内部で保持していればよい。そうすれば
いくらネストしても対応できる。
問題は親でも子でもnewで生成された場合に寿命をどう知るかだな