无法解析符号列表

Symbol list could not be resolved

我在以下代码中出现了一个奇怪的错误:

#ifndef BALL_H_
#define BALL_H_

#include <list>

#include "SFML/Graphics.hpp"

using namespace sf;

class Ball : public CircleShape {

protected:
    unsigned int mass;  //the mass of the ball
    float xSpeed;       //the x component of the ball's speed
    float ySpeed;       //the y component of the ball's speed

public:
    //Constructor : need the screen dimensions to center it
    Ball(const unsigned int width, const unsigned int height);

    //function that update the position of the ball and handle collisions.
    void update(const unsigned int width, const unsigned int height, list<Ball>::iterator *it);
};
#endif /* BALL_H_ */

错误是:无法解析符号 'list'。但是,我在同一个项目的另一个文件中使用列表库,它工作得很好。

我正在使用 eclipse 和 linux。

到目前为止,我在 eclipse 论坛中找到的唯一解决方案是关闭并重新打开项目...对我不起作用。

感谢您的帮助 =)

你必须在list<...>前面加上std::。我假设你在其他任何地方使用它,你在文件顶部有 using namespace std 或等效的东西。

void update(const unsigned int width, const unsigned int height, std::list<Ball>::iterator *it);