我正在使用SFML进行一些项目。我已经从他们的官方网站上下载了库,使用我制作的VS10项目cmake,对其进行了编译,并获得了我需要的所有库和文件。但是,在我的项目中,我不断收到胡说八道的错误,例如

即使我已经在SoundBuffer header 中检查了一个名为LoadFromFile的函数,在Sound中也有一个名为SetBuffer的函数。

  SoundM::SoundM(void)
  {
     buffer.LoadFromFile("ress/soundA.wav");
     collision.SetBuffer(buffer);
  }



   #ifndef SOUND_H
   #define SOUND_H

    enum Sounds {
PaddleCollision,
Losing
    };

     class SoundM {
     public:
SoundM(void);
void play(Sounds Sound);
    private:
sf::SoundBuffer buffer;
sf::Sound collision;
    };

    #endif
我在这里想念什么?

最佳答案

我假设您正在使用SFML 2.0 RC版本。名称约定有所更改,现在,所有函数名称均以小写字母(驼峰大写)开头。

因此,您应该尝试一下。

buffer.loadFromFile("ress/soundA.wav");
collision.setBuffer(buffer);

而不是那样。
buffer.LoadFromFile("ress/soundA.wav");
collision.SetBuffer(buffer);

希望对您有所帮助!

关于c++ - C++中的SFML库的编译问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11345927/

10-09 13:12