当我构建时,它成功且没有错误。但是,当我从IDE运行时,出现错误(我的图像无法加载,因为它无法找到目录)。
但是,如果我进入文件夹并运行程序(.exe),它会完美地找到图像目录。
mTextures.Load(Textures::Background, "../GFX/Background.png");
^给出目录的代码行。
我认为这是我在编译器中没有正确输入的设置的问题?
我在Windows上使用Code :: Blocks。
答案 0 :(得分:0)
这是因为您在文件名中使用相对路径:
"../GFX/Background.png"
..
说"从目前的目录"上去一个目录。如果您希望能够在任何地方运行程序,请使用绝对路径,例如:
"/home/me/GFX/Background.png"
答案 1 :(得分:0)
您的调试器的当前目录(即从codeblock中执行应用程序时使用的当前目录)可能不正确。检查项目设置,并将当前目录修复到目标目录(包含可执行文件本身的目录)。
具体说明为here。
答案 2 :(得分:0)
使用双斜线添加图像存在的完整路径。
mTextures.Load(Textures::Background, "C:\\Program Files\\..\\..\\GFX\\Background.png");