C++ 在函数调用中定义命名变量

C++ 在函数调用中定义命名变量,c++,function,vector,reference,parameter-passing,C++,Function,Vector,Reference,Parameter Passing,代码中有什么问题? 我有: “错误:应在'j'之前使用主表达式” #包括 使用名称空间std; void foo(vector&v){ } int main() { foo(向量j); 返回0; } 这是无效的: foo( vector<int> j); foo(向量j); 因为您不能在函数调用中定义命名变量 你的意思是肯定 int main() { vector<int> j; foo(j); return 0; } intmain() {

代码中有什么问题? 我有:

“错误:应在'j'之前使用主表达式”

#包括
使用名称空间std;
void foo(vector&v){
}
int main()
{
foo(向量j);
返回0;
}
这是无效的:

foo( vector<int> j);
foo(向量j);
因为您不能在函数调用中定义命名变量

你的意思是肯定

int main()
{
    vector<int> j;
    foo(j);
    return 0;
}
intmain()
{
向量j;
傅(j),;
返回0;
}

@StoryTeller此类评论最好附有SO的链接。
int main()
{
    vector<int> j;
    foo(j);
    return 0;
}