C++ で 3D ベクトルを開始しようとしています。最初は 100 x 100 x 1 にしたいのですが、問題が発生しています。(基本的には 2 次元であることはわかっていますが、後で z 軸ベクトルのサイズを変更します。)
ベクトルにポインターを含める必要があるエンティティーというクラスがあります。エンティティ ベクター ヘッダーを正しく含めましたが、まだ機能していません。これが私がやろうとしていることです:
vector <vector <vector <Entity* > > > matrix (100, vector < vector < Entity* > > (100,vector<Entity*> (1, NULL)));
コンパイラが与えているエラーは、「数値定数の前に識別子が必要です」です。よく確認したところ、この行の前にセミコロンなどの抜けはありません。この行を削除すると、コードはきれいにコンパイルされます。
これは、関数定義の「private:」行の直後です。メンバー変数はコンストラクターを受け入れることができますか? 私もちょうど入れてみました
vector <vector <vector <Entity* > > > matrix;
.h ファイル内、および
matrix (100, vector < vector < Entity* > > (100,vector<Entity*> (1, NULL)));
.cpp ファイルのコンストラクターで、それも機能しませんでした (呼び出しに一致せず、int から Entity* への無効な変換)
これの 3 次元「ベクトル」を宣言する最良の方法は何ですか (特にクラスで?)
ありがとう!