同じファイル内だと記述順 別ファイルの時は不定
知識の上では知っていたんだが……
グローバルオブジェクトAのコンストラクタから 別のSingletonパターンのオブジェクトBに アクセスするとメモリリークが出た
どうなっていたかというと
- グローバルオブジェクトA初期化
- Aのコンストラクタ内からBにアクセス
- アクセスに対応してBは自己生成 スタティックなポインタに自己アドレスを保存
- Bのスタティックポインタ 初期化 さっき生成したBのインスタンスは行方不明に
何がひどいって、初期化順序が逆だとフツーに動くわけで ちょっとした条件変化で再現性がなくなる点