問題: new とコンストラクタ
解決: 2回関数呼ぶだけ
C* c = new D(); 4008b5: bf 08 00 00 00 mov $0x8,%edi // 0x8 == sizeof(D) 4008ba: e8 e9 fe ff ff callq 4007a8 <operator new(unsigned lon g)@plt> 4008bf: 48 89 c3 mov %rax,%rbx 4008c2: 48 89 df mov %rbx,%rdi 4008c5: e8 5c 02 00 00 callq 400b26 <D::D()>
コンストラクタは確保したメモリアドレスを(隠れた)第一引数にする