我有类mizer
:
class mizer {
...
public:
...
void getDeviation( vector<double>&, vector<int>& )
...
};
实现:
void mizer::getDeviation( vector<double>& best_mass, vector<int>& best_comb ){
...
}
但有时我不想提供第二个参数best_comb
。所以我想设置默认值或其他东西:
void mizer::getDeviation( ..., vector<int>& best_comb = default )
我试过:
static vector<int> def();
...
void mizer::getDeviation( ..., vector<int>& best_comb = def )
但它不起作用:
/minimizer/mizer.C:69:69: error:
non-const lvalue reference to type 'vector<int>' cannot bind to a value of unrelated type 'vector<int> ()'double mizer::getDeviation( vector<double>& best_mass, vector<int>& best_comb=def ){
如何设置默认的vector
引用变量?
最佳答案
static vector<int> def();
声明一个静态函数 def
返回 vector<int>
.使用 static vector<int> def{};
或 static vector<int> def;
相反
关于c++ - C++ 中的默认引用参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42955039/