向量循环抛出2个错误
Vector loops throwing 2 errors?
lab26.cpp:在函数"int meanUsingIterators(const std::vector&("中:
lab26.cpp:35:13:错误:与"operator/"不匹配(操作数类型为"double"answers"std::vector::const_iterator{aka __gnu_cxx::__normal_iterator>}"(
mean=总和/结束;
lab26.cpp:在函数"int meanUsingPointers(const std::vector&("中:
lab26.cpp:51:13:错误:二进制"operator/"的类型为"double"answers"std::vector::const_pointer{aka const int*}"的操作数无效。
mean=总和/结束;
=================================================
#include <vector>
#include <cmath>
using namespace std;
int meanUsingIndexing(const vector<int>& v)
{
vector<int>::size_type i, end = v.size();
double sum = 0;
double mean;
for(i = 0; i < end; i++)
{
sum += v.at(i); // or sum += v[i]
}
mean = sum / end;
return round(mean);
}
int meanUsingIterators(const vector<int>& v)
{
vector<int>::const_iterator i, end = v.cend();
double sum = 0;
double mean;
for(i = v.cbegin(); i < end; i++)
{
sum += *i;
}
mean = sum / end;
return round(mean);
}
int meanUsingPointers(const vector<int>& v)
{
vector<int>::const_pointer i, end = v.data() + v.size();
double sum = 0;
double mean;
for(i = v.data(); i < end; i++)
{
sum += *i;
}
mean = sum / end;
return round(mean);
}
no match for ‘operator/’ (operand types are ‘double’ and ‘std::vector::const_iterator
。
因此,double
和迭代器之间带有除法符号是导致这种情况的原因。
当end = v.cend();
时,不能使用end
作为元素的数量(以获得平均值(。用mean = sum / v.size();
替换mean = sum / end;
invalid operands of types ‘double’ and ‘std::vector::const_pointer
。
这里是double
和const*
,它们之间有一个除法符号,这就是问题所在。
当end = v.data() + v.size();
时,不能使用end
作为元素的数量(以获得平均值(。用mean = sum / v.size();
替换mean = sum / end;
- 键盘不起作用 - Arduino Uno - 与变量有关的多个错误
- 使用 g++ 编译时出现多个错误?
- 即使有 0 个错误,Getter 似乎也会使程序崩溃
- Xcode OSX上的C++构建失败,出现多个错误文件IO..不可用:在macOS 10.15中引入
- 向量循环抛出2个错误
- operator_surrogate_func:未找到匹配的重载和其他2个错误
- 代码在编译时生成三个错误
- 代码中存在多个错误
- 在Visual Studio 2019中构建简单的点云可视化代码时,来自PCL的第三方库的多个错误
- VS2017 中的头文件中有多个错误,opengl 项目C++
- 我必须将记录结构转换为一类,并且不断遇到多个错误
- 在 for 循环和变量值中获取此代码的多个错误;
- 我在C++文件中的简单代码块上有 2 个错误。错误 C2059:语法错误:"?"。第二智能感知:预期表达式。怎么了?
- 纠正C++学校图书馆管理程序中的两个错误
- 多个错误C1083,尽管路径和权限正确
- 仅iostream就给了我457个错误
- 使用 G++ 命令行和 #include "std_lib_facilities.h" 时出现多个错误
- 中止陷阱:C 中的6个错误
- 类错误导致几百个错误
- 在Visual Studio中重建我的项目时,我会在同一行错误C2371上遇到2个错误