次のように構造体を定義したいと思います。
struct myStruct {
std::vector<double> myVector(vector_size, init_value);
...
}
引数vector_size
(int) とinit_value
(double) を構造体に渡すことは可能ですか?
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) };
構造体のコンストラクターを定義できます。
struct myStruct {
std::vector<double> myVector;
myStruct(size_t vector_size, double init_value) : myVector(vector_size, init_value) {}
};