我有一个场景,我需要将一个向量添加为现有遗留代码的输入/输出[reference]参数.为了避免任何错误,我需要将其设为默认参数.
有人可以建议如何将向量作为默认参数添加到方法.如果可能的话我真的很怀疑.此外,如果这是可能的,那么矢量应该用什么样的价值?
我建议重载方法:
void foo(double otherParameter);
void foo(double otherParameter, std::vector<int>& vector);
inline void foo(double otherParameter)
{
std::vector<int> dummy;
foo(otherParameter, dummy);
}
Run Code Online (Sandbox Code Playgroud)
另一种设计,明确表示这vector是一个选项输入/输出参数,是:
void foo(double parameter, std::vector<int>* vector = 0);
Run Code Online (Sandbox Code Playgroud)
是的,一个原始指针 - 我们没有取得它的所有权,因此不需要智能指针.
| 归档时间: |
|
| 查看次数: |
3960 次 |
| 最近记录: |