2017-12-06 4 views
-2
#include<bits/stdc++.h> 
using namespace std; 

void addEdge(vector<int> &adj[],int a,int b) 
{ 
adj[a].push_back(b); 
} 

int main() 
{ 
vector<int> adj[5]; 
addEdge(adj,0,2); 
} 

ここで、3番目の行に「 '、' token」の前に「[Error] expected '」というエラーが表示されます。誰かがコードに間違っていることを教えてもらえますか?関数パラメータでベクトルの配列への参照を使用しているときに、エラーが発生するのはなぜですか?

+2

あなたは '&adj []'について確信していますか? –

+0

はい私はそれについて確信しています – invince

+1

次に、この拡張を提供するコンパイラベンダーに尋ねることをお勧めします。コードが有効なISO C++ではありません。 – StoryTeller

答えて

0

これは配列への参照であってはなりません。配列はちょうどポインタになりますので、配列はうまくいくでしょう。

#include<bits/stdc++.h> 
using namespace std; 

void addEdge(vector<int> adj[],int a,int b) 
{ 
adj[a].push_back(b); 
} 

int main() 
{ 
vector<int> adj[5]; 
addEdge(adj,0,2); 
} 
関連する問題