多次元(intの場合は2次元の配列)を宣言したいと思います。私はグローバル配列のサイズを宣言することはできません。一次元では、すべてが動作します:宣言のないポインタのC++多次元配列
#include <iostream>
#include <fstream>
using namespace std;
int N, M;
bool *table;
int main()
{
ifstream in ("in.txt");
in >> N >> M;
table = new bool[N];
return 0;
}
しかし、私は2次元配列を宣言する場合、私はエラーを取得する: 「M」を
#include <iostream>
#include <fstream>
using namespace std;
int N, M;
bool **table;
int main()
{
ifstream in ("in.txt");
in >> N >> M;
table = new bool[N][M];
return 0;
}
定数式では使用できませんNとMの代わりに番号を宣言し、ベクトル配列を作成するか、またはテーブルを主な関数で宣言する以外に、私の選択は何ですか?
これについて心配するのではなく、単に 'std :: vector'を使うのはなぜですか? – Barmar