-1

次のように構造体を定義したいと思います。

struct myStruct {
   std::vector<double> myVector(vector_size, init_value);
   ...
}

引数vector_size(int) とinit_value(double) を構造体に渡すことは可能ですか?

4

2 に答える 2

5

2 つの引数のコンストラクターを定義し、コンストラクターの初期化リストを使用します。

struct myStruct{
   myStruct(size_t a_size, double a_value): myVector(a_size, a_value) {}
   std::vector<double> myVector;
};

または、集計の初期化を使用します( http://ideone.com/Ky50Exを参照):

struct myStruct
{
    std::vector<double> myVector;
};

myStruct m = { std::vector<double>(14, 0.5) };
于 2013-07-03T09:19:54.833 に答える
4

構造体のコンストラクターを定義できます。

struct myStruct {
   std::vector<double> myVector;

   myStruct(size_t vector_size, double init_value) : myVector(vector_size, init_value) {}
};
于 2013-07-03T09:20:03.383 に答える