在函数调用中声明一个向量并通过引用传递它

时间:2016-01-28 10:32:06

标签: c++ vector

我想以这种方式声明vector

myFunction(new std::vector<stuff>{});

vector作为参考传递:

void myFunction(const std::vector<stuff> &myVec);

2 个答案:

答案 0 :(得分:6)

你不需要new参数(在任何情况下都返回一个指针,而不是一个左值)。你可以简单地传递一个临时的:

myFunction(std::vector<stuff>{});

临时可以绑定到const左值参考。

答案 1 :(得分:0)

如果参数是可选的,您可以简单地将该函数声明为

void myFunction(const std::vector<stuff>& myVec = std::vector<stuff>{});

然后,当默认参数正常时,您可以像myFunction()一样调用它。