我想看看质地大于0像素(检查它是否显示)是这样的:SFML 2.1纹理
if(image.getSize()>0)
图片纹理。
我得到一个错误说这个:
error: no match for 'operator>' in 'image.sf::Texture::getSize() > 0'
是什么意思?我怎样才能使它工作?(如果可能的话)
如果这是不可能的,我怎么看图像是否存在于纹理中? 我正在使用SFML 2.1和CodeBlocks。
谢谢。
我想看看质地大于0像素(检查它是否显示)是这样的:SFML 2.1纹理
if(image.getSize()>0)
图片纹理。
我得到一个错误说这个:
error: no match for 'operator>' in 'image.sf::Texture::getSize() > 0'
是什么意思?我怎样才能使它工作?(如果可能的话)
如果这是不可能的,我怎么看图像是否存在于纹理中? 我正在使用SFML 2.1和CodeBlocks。
谢谢。
我找到出路: 使用if(image.getSize().x>0&&image.getSize().y>0)
它分开地比较x和y。
sf::Texture::getSize()
返回sf::Vector2<T>
,特别是sf::Vector2u
。你应该做
sf::Vector2u size = image.getSize();
if(size.x > 0 || size.y > 0) ...
或
if(image.getSize() > sf::Vector2u(0, 0)) ...
没有op>用于比较矢量;这是没有道理的。 – Hiura 2014-09-05 10:12:44
我试过第二个,它不起作用。 – user3882772 2014-09-05 16:49:36
@ user3882772当然不起作用。比较我以前的评论... – Hiura 2014-09-05 18:44:17