使用したい構造体を以下に定義します。(私は使用していますnamespace std
):
struct body {string name; float m; vector< float > p; vector< float > v;};
これはコンパイルされますが、後で実行時にセグメンテーション違反が発生します。これは、ベクトルのサイズが定義されていないためです (3 つのコンポーネントが必要です)。
ベクトル コンストラクターを使用してみましたvector x(3,0)
が、これはコンパイルされません。私は得る:
glib.h(5): error: expected a type specifier
struct body {string name; float m; vector<float> p (3,0); vector<float> v(3,0);};
^
glib.h(5): error: expected a type specifier
struct body {string name; float m; vector<float> p (3,0); vector<float> v(3,0);};
^
glib.h(5): error: expected a type specifier
struct body {string name; float m; vector<float> p (3,0); vector<float> v(3,0);};
^
glib.h(5): error: expected a type specifier
struct body {string name; float m; vector<float> p (3,0); vector<float> v(3,0);};
基本的に、構造体を定義するときに 3 つの要素のベクトルにスペースを割り当てる必要がありますが、これを行う方法がわかりません。私は C++ の初心者で、多くの調査を行いましたが、答えが見つかりません。私が得ることができる助けをありがとう。