我在以下代码的第一行出现错误。错误是

error: expected ‘,’ or ‘...’ before ‘distances’

我不明白这到底是怎么回事。我正在使用ideone(如果有帮助的话),但我不认为这是造成问题的原因。
vector<string> Most(bitset<4> treasure, int distance, string path, int p, int[] distances, string[] paths){
    for(int i = 1; i<4; i++){
        if(100>=distances[p*4+1+i]+distances[i*5+1]){
            Most(treasure, distance+distances[p*4+1+i], path.append(paths[p*4+1+i]),i, distances, paths);
        }
   }
    vector<string> test;
    return test;
}

最佳答案

更改这些参数声明

int[] distances, string[] paths


int distances[], string paths[]

您使用的语法在C#中有效,在C++中无效。

您确定该功能有效吗?它总是返回一个空 vector 。并且考虑到用作参数路径的原始对象不会更改,因为它是通过值传递给函数的

关于c++ - C++错误: expected ‘,’ or ‘…’ before ‘distances’ ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26600987/

10-11 11:24