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