Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • 締切済み

C++の配列オブジェクトを宣言と同時に初期化する方法

たとえば class ningen{ private: int nenrei; char name[20]; public: ningen(int nenrei , char *name){ this->nenrei=nenrei; strcpy(this->name,name); } }; というクラスがあったとして int main(void) { ningen ni[2]={ ningen(20,"sato"),ningen(30,"goto") }; return 0; } のように宣言と同時に初期化する方法は上記のように 一つ一つningen(int,char*)で指定しないとできないのでしょうか? もっと清潔に記述する方法はないのでしょうか? よろしくお願いします。

みんなの回答

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

実際にできるかどうかは別として、どのように記述できるのが理想なのでしょうか?

sleep-soul
質問者

お礼

たとえば、、 ningen ni[2] = ningen{(20,"sato"),(30,"goto")}; のようにningenを何度も書かないでやるような方法はないのかな? と思って質問させていただきました。

すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

どのように「初期化」したいのかによるけど, 基本的にはそうやってコンストラクタをべたべた並べるしかない.

sleep-soul
質問者

お礼

べたべた並べるしかないんですね、、了解しました。

すると、全ての回答が全文表示されます。
  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

http://www.kumei.ne.jp/c_lang/cpp/cpp_08.htm コンストラクタ作ったらいいんじゃないの?

すると、全ての回答が全文表示されます。

関連するQ&A