2014-09-06 145 views
1

在SFML中,我理解为Vector2 s为对或点。有:SFML Vector2用法

sf::Vector2f float 

sf::Vector2i int(signed) 

sf::Vector2u unsigned int 

我说得对吗?
怎么样long int s和long long int s和double s和long double s?
我认为只有这三种Vector2 s。
我不需要在任何地方使用它,但我只是想知道。
谢谢。

+2

如果SFML没有提供这些名称,您可以使用'typedef Vector2 Vector2l'自己创建它们。 – 0x499602D2 2014-09-06 01:12:33

+2

['sf :: Vector2'是模板化的](http://sfml-dev.org/documentation/2.1/classsf_1_1Vector2.php)。正如文档所说,“sf :: Vector2 ”是“sf :: Vector2f”。“如果你想要一个'double',只需使用'sf :: Vector2 '。这些其他的(即'sf :: Vector2d')默认不提供的原因是它们不太常见。 – Cornstalks 2014-09-06 01:20:34

+0

谢谢。你可以把它作为答案吗? – user3882772 2014-09-06 02:26:25

回答

1

从DOC:

你一般不必在意模板形式 (sf::Vector2<T>),最常见的特化有特殊 的typedef:

sf::Vector2<float>sf::Vector2f

sf::Vector2<int>sf::Vector2i

sf::Vector2<unsigned int>sf::Vector2u

可以使用sf::Vector<T>代替sf::Vector2f/sf::Vector2i/sf::Vector2u如果你想专攻它。