以下の配列を含む C++ 構造体を作成できます。
struct foo{
int bar[42];
};
私がやりたいことは次のとおりです。
struct foo{
std::vector<int> bar(42);
};
もちろん、これはコンパイルされませんが、意図はわかります。.reserve() などは承知しておりますが、 .reserve() を宣言する際に既にスペースを確保しておきたいfoo
です。
その理由は、構造体内の配列を使用して C コードを生成するかなり複雑な Perl スクリプトを変更することになっているためです。これらの配列は s に置き換える必要がありますstd::vector
。push_back
その後、スクリプトは XML ファイルに応じて配列を初期化しますが、構造が深くネストされているため (配列の構造体と構造体の配列)、スクリプトをいじりたくありません。もちろん、配列のサイズは異なります。
ご提案いただきありがとうございます。