我在迭代集合时遇到问题
I have an issue with iterating a set
我需要遍历一个集合。该集合是一组 Items 是我实现的类。我有这个错误:
error C2662: 'double Item::getUnitPrice(void)' : cannot convert 'this' pointer from 'const Item' to 'Item &'
这是我遍历集合的函数,但我在"sum+= it->getUnitPrice();"
double Customer::totalSum()
{
double sum = 0;
set<Item>::iterator it;
for (it = _items.begin(); it != _items.end(); ++it)
{
sum += it->getUnitPrice();
}
return sum;
}
提前感谢!
你应该遍历你的集合:
double Customer::totalSum()
{
double sum = 0f;
for( std::set<Item>::iterator it = _items.begin(); it != _items.end(); ++it )
{
sum += (*it).totalPrice();
}
return sum;
}
我只是不知道如何使用集合获得单价。
double Customer::totalSum()
{
double sum = 0;
set<Item>::iterator begin = _items.begin(); <<< Although clever compilers can make
set<Item>::iterator end = _items.end(); << this a futile attempt at optimization.
for( set<Item>::iterator iter = begin; iter != end; ++iter )
{
sum += it->getUnitPrice();
}
return sum;
}
相关文章:
- 编译包含字符串的代码时遇到问题
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- 从其他类访问类时遇到问题
- 使用静态成员声明类时遇到问题
- C++ 填充数组时遇到问题
- 在将字符串放入字符串向量时遇到问题?
- 余数除法和不允许除以零 (c++) 时遇到问题
- 我在C++中使用 getline() 函数时遇到问题
- C++线程安全:如果只有一个线程可以写入非原子变量,但多个线程从中读取. 会遇到问题吗?
- 在我的四叉树实现中遇到问题
- 在 c++ 中循环遍历数组时遇到问题
- 使用 MinGW 在 Windows 上构建 GLEW 时遇到问题
- 编译 Cilk Plus 程序时遇到问题
- 存储另一个函数返回的布尔数组时遇到问题
- 我在 OpenGL 中显示图像时遇到问题
- 我在解决此错误时遇到问题.我正在努力在主函数中传递数组
- 在 for 循环中更新两个变量时遇到问题C++
- 为什么我的程序在打开网络设备时遇到问题
- 在 Tensorflow C++ 中使用 FIFOQueue 时遇到问题
- 为什么我在虚幻引擎中的多态性和接口方面遇到问题?