[C++] クラスを定義するときに,これだけは必要だろっていうメンバーのまとめ
class T { public: T(); T(const T& other); virtual ~T() throw(); T& operator=(const T& other); private: struct TImpl; TImpl* pimpl_; }
T::T()
- デフォルトコンストラクタ
T::T(const T& other)
- コピーコンストラクタ
virtual T::~T() throw()
- デストラクタ.デストラクタは絶対 virtual, 絶対例外投げない.
T& T::operator=(const T& other)
- 代入演算子
TImpl* T::pimpl_
- PImpl イディオムでメンバー変数を隠蔽
他にも,「これはあったほうがいいよ!」とか「ここおかしいよ!」っていうのがあったら教えてください m(__)m