いろきゅうの(元)はてなダイアリー

はてなダイアリーから移行中…

24時間プログラミング[22時間目] 〜聖夜に舞い降りるバグと妖精〜

ぅぉぉぉ、この時間帯になって偉い眠くなってきたっ!^^;

ところで、C++で 配列なクラスメンバが初期化できないっていう制限、どうにかならなかったんですかねぇ…。 コンストラクタでどうしても必要な値があるにもかかわらず、そのオブジェクトは配列で扱ったほうが便利というクラスがあり、どーしようかとちょっと悩み中。

やっぱりこれしかないかのう

class B{ public: B(int){} };

class A
{
  A(int n)
  : b0(n), b1(n), b2(n)
  {
    ab[0] = &b0;
    ab[1] = &b1;
    ab[2] = &b2;   
  }

private:
  B  b0;
  B  b1;
  B  b2;

  B* ab[3]; // 配列っぽく
};

でも、ちょぃとダサいよなぁー。 う〜む。