输入参数不起作用
Input argument not working
我正在尝试使用先前定义的 class LTexture 的对象作为第一个输入参数来定义 loadMedia 函数。第二个输入参数是文件路径的字符串。
bool loadMedia(LTexture textureName, std::string path)
{
//Loading success flag
bool success = true;
//Load texture
if ( !textureName.loadFromFile(path.c_str()) )
{
printf("Failed to load texture!\n");
success = false;
}
return success;
}
然后在我的主循环中:
//Load media
if (!loadMedia(mainCharTex,"dot.bmp") | !loadMedia(Enemy1Tex,"dot.bmp"))
{
printf("Failed to load media!\n");
}
else
{
但是,当我运行程序时,纹理没有加载。如果我输入其中一个纹理对象(例如 mainCharTex),其中 textureName 在 loadMedia 函数中,则纹理会成功加载。由此看来,第一个输入参数似乎没有正确实现。有什么建议吗?
也许您需要通过引用传递 textureName
以便您可以在函数内部更改它并且仍然可以在 main:
中使用更改
bool loadMedia(LTexture& textureName, std::string path)
^
我正在尝试使用先前定义的 class LTexture 的对象作为第一个输入参数来定义 loadMedia 函数。第二个输入参数是文件路径的字符串。
bool loadMedia(LTexture textureName, std::string path)
{
//Loading success flag
bool success = true;
//Load texture
if ( !textureName.loadFromFile(path.c_str()) )
{
printf("Failed to load texture!\n");
success = false;
}
return success;
}
然后在我的主循环中:
//Load media
if (!loadMedia(mainCharTex,"dot.bmp") | !loadMedia(Enemy1Tex,"dot.bmp"))
{
printf("Failed to load media!\n");
}
else
{
但是,当我运行程序时,纹理没有加载。如果我输入其中一个纹理对象(例如 mainCharTex),其中 textureName 在 loadMedia 函数中,则纹理会成功加载。由此看来,第一个输入参数似乎没有正确实现。有什么建议吗?
也许您需要通过引用传递 textureName
以便您可以在函数内部更改它并且仍然可以在 main:
bool loadMedia(LTexture& textureName, std::string path)
^