久しぶりに C++ プログラミング

丸2年ぐらい C++ でコードは書いていなかった気がする。Win32 の DLL をプラグイン的に取り込むソフトのために使ったのだが、色々忘れてますね。
途中でメンバに const 付け歩きとか、代入でコピーコンストラクタが呼ばれなくて…、とか。

続きを読む

実装にだけ必要な型を隠すには...

どうやるのが定番なんだろうか?

class A
{
public:
  int method1(int arg);
  int method2(int arg);

private:
  B member1;
  C member2;
};

A を利用する人は、B や C を知らなくてもいい。でも、A の method1, method2 の実装には B, C といった型が必要で、それはメンバで保持している。でも、A の利用者に B や C を公開したくない。

続きを読む