我正在开发一个应用程序,我在其中绘制了几张图像,如下所示:
void TimeSlice::draw(float fX, float fY) {
list<TimeSliceLevel*>::iterator it = levels.begin();
float level_x = x;
float level_y = y;
while(it != levels.end()) {
(*it)->draw(level_x,level_y);
level_y += (*it)->height;
++it;
}
}
虽然这有点不正确。我需要将 TimeSliceLevel* 放在 X 上。当我有一个for(int i = 0; i < slices.size(); ++i)
循环时,我可以使用x = i * width
. 虽然我正在使用迭代器,因为我多次被告知这是一个很好的编程:> 我想知道迭代器是否有一个“索引”数,我可以用它来计算新的 X 位置?(所以更多的是关于使用迭代器的问题)
亲切的问候, Pollux