2016-06-12 16 views
0

I GEN VS 2015年に私のプログラムをコンパイルエラー:ベクトルを返す関数からベクトル値を取得する方法は?

関数へのポインタ型に適したオペレータのないクラス型のオブジェクトの呼び出し()または変換関数

それ関数への赤の呼び出しでマークし、ベクトルを返します。コードは次のとおりです。

struct punct { 
int x, y, val; 
}; 

int koli4estvoShagov = 0; 
int arr[100][100]; 
int n, m; 

vector<punct> shag(int x, int y, int nrShaga) { 
punct shag; 
shag.val = arr[x][y]; 
shag.x = x; 
shag.y = y; 
vector<punct> shagi; 
shagi.push_back(shag); 

if (nrShaga == koli4estvoShagov - 1) { 
    return shagi; 
} 
else if (x == m - 1) { 
    vector<punct> shagVNiz = shag(x, y + 1, nrShaga + 1); 
    shagi.insert(shagi.end(), shagVNiz.begin(), shagVNiz.end()); 
    return shagi; 
} 
else if (y == n - 1) { 
    vector<punct> shagVPravo = shag(x + 1, y, nrShaga + 1); 
    shagi.insert(shagi.end(), shagVPravo.begin(), shagVPravo.end()); 
    return shagi; 
} 
else { 
    vector<punct> shagVPravo = shag(x + 1, y, nrShaga + 1); 
    vector<punct> shagVNiz = shag(x, y + 1, nrShaga + 1); 
    vector<punct> max; 
    if (sum(shagVNiz) > sum(shagVPravo)) 
     max = shagVNiz; 
    else 
     max = shagVPravo; 

    shagi.insert(shagi.end(), max.begin(), max.end()); 
    return shagi; 
} 
} 

具体的には、「シャグ」機能の呼び出しを見てください。

答えて

2
vector<punct> shag(int x, int y, int nrShaga) { 
punct shag; 

ローカル変数shagは、機能と同じ名前です。

+0

Omg、このような些細なエラー!ありがとう! –

関連する問題