1

私は次のようなことをしました:

Grid(int row, int col):num_of_row_(row), num_of_col_(col) {
     grid_ = new vector<vector<bool> > (row, col);  
}

ネストされたベクトルを動的に割り当てます。これは正しいです?私はこの構文を使用することを意味します:

new vector<vector<type> > (outersize, innersize)

ここで、**outersize、innersize はどちらも「int」変数です。**

更新:私は実際にこのコードを使用しましたが、動作します。理由を知りたいだけです。

4

1 に答える 1

2

コンストラクターに渡される2番目のパラメーターは、繰り返されるベクトルの要素ですoutersize。次の構文を使用する必要があります。

new vector<vector<type> > (outersize, vector<type>(innersize, elementValue));

たとえば、bool最初にに設定された50x25グリッドを作成するには、次trueを使用します。

vector<vector<bool> > *grid = new vector<vector<bool> >(50, vector<bool>(25, true));
于 2013-02-08T18:56:44.710 に答える