C++でのエラーベクトル配列へのポインタの削除。 以下のコードを見ると、V(頂点数)サイズのベクトルの「新しい」配列が必要です。 btw、私はここで配列と "新しい"を使用する理由があります。 "新しい"/"削除"操作を使用しないで、問題を回避しないでください。C++削除ベクトルの配列へのポインタ<int>
class Graph
{
int V; // No. of vertices
vector<int> *adj; // An array of adjacency lists
public:
Graph(int V);
~Graph();
...
};
// implementation
Graph::Graph(int V)
{
this->V = V;
adj = new vector<int>[V];
}
Graph::~Graph()
{
int v;
for (v = 0; v < V; v++) {
adj[v].clear();
}
delete adj;
}
int main()
{
int V=100;
Graph g(V);
return 0;
}
あなたは '' delete []を使用する必要があります。そして、何がエラーですか? – songyuanyao
なぜ地球上で 'ベクトル *'を使用していますか? –