vs报错:明显调用的表达式前的括号必须具有(指针)函数类型
原因:同一个作用域下,变量名和函数名冲突。
//平均值
double mean(std::vector<double>& v)
{
double sum = 0;
for (std::vector<double>::iterator pbegin = v.begin(); pbegin != v.end(); ++pbegin)
{
sum += *pbegin;
}
double average = sum / v.size();
return average;
}
// 标准差
double stddev(std::vector<double>& v)
{
//报错
// double mean;
//mean = mean(v);
//更改变量名
double m;
m = mean(v);
double sum = 0.0;
int size = v.size();
for (int i = 0; i < size; ++i)
{
sum += pow(v[i] - m, 2);
}
double stddev = sqrt(sum / size);
return stddev;
}