我想以这种方式声明vector
:
myFunction(new std::vector<stuff>{});
将vector
作为参考传递:
void myFunction(const std::vector<stuff> &myVec);
答案 0 :(得分:6)
你不需要new
参数(在任何情况下都返回一个指针,而不是一个左值)。你可以简单地传递一个临时的:
myFunction(std::vector<stuff>{});
临时可以绑定到const
左值参考。
答案 1 :(得分:0)
如果参数是可选的,您可以简单地将该函数声明为
void myFunction(const std::vector<stuff>& myVec = std::vector<stuff>{});
然后,当默认参数正常时,您可以像myFunction()
一样调用它。