(続き) ctor/dtorに関する注意
コンストラクタ、デストラクタをコンパイラに自動生成させる場合、当然かもしれませんがそれらはインライン化されます。インライン化というか何も処理が発生しないというか。
しかしもちろん、
[foo.h] class Foo { public: Foo(); ~Foo(); }; [foo.cpp] Foo::Foo(){} Foo::~Foo(){}
こう書いてしまうと構築、解体処理が.cppに記述した関数へのcall命令に変換されますから、非効率です。気をつけましょう。何も処理をしないなら、
[foo.h] class Foo { public: Foo(){} ~Foo(){} };
で良いでしょう。