0

我一直在浏览http://www.sfml-dev.org/tutorials/1.6/上的教程,并且在使用视图教程中遇到了问题。

这是我正在处理的代码部分:

#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>

int main(){

    // Create instance of Window
    sf::Window App(sf::VideoMode(800, 600, 32), "SFML Window");

    sf::Vector2 Center(1000, 1000);
    sf::Vector2 HalfSize(400, 300);
    sf::View View1(Center, HalfSize);

    // So on...

我正在使用 Mac OSX 10.8,并且正在使用 g++ 进行编译。我收到错误消息:

error: missing template arguments before ‘Center’

我该如何纠正这个错误?

编辑:我不知何故读错了教程。被认为是 Vector2f。

4

2 回答 2

2

您的问题与错误所说的完全一样,您缺少Vector2模板的类型,并通过View类的构造函数来判断,

View (const sf::Vector2f &Center, const sf::Vector2f &HalfSize)

你想要一个Vector2<float>. 这些类型已经typedefVector2.hpp

// Define the most common types
typedef Vector2<int>          Vector2i;
typedef Vector2<unsigned int> Vector2u;
typedef Vector2<float>        Vector2f;
于 2012-11-28T09:19:22.190 回答
1

指定向量的类型,例如sf::Vector2<int>

于 2012-11-28T09:02:05.750 回答