こちらですが、とりあえず、動作させる所までは来ました(手を入れないと動かないです)。しかし、わかった事が2点。これは、かなり怪しい領域に突入してきました。
- メンバ配置のバイト・アライメントを考慮に入れなければならない
- 仮想継承のサイズを考慮に入れなければならない
以上をクリアすれば、今の方向性で問題なさそうです。バイト・アライメントなんて、コンパイルする環境によって変わるし、仮想継承のサイズなんて実装依存です。困ったもんだ…。
追記: バイト・アライメントをコード中で取得する方法って、何か無いだろうか? boost::pool でも参考にする?
0 件のコメント:
コメントを投稿