2012-03-18 132 views
-3

我正在使用C++並使用G ++編譯器來編譯我的遊戲。它編譯好,但我鏈接到圖像,並沒有在遊戲中顯示。我嘗試使用本地鏈接和完整的鏈接,但我無法讓任何一個人工作。有沒有特別的方法可以鏈接到Linux中的文件?Linux不會爲我的遊戲加載我的圖像

代碼示例:

StatBack.load_image("\\Dropbox\\Pirate_Entertainment\\images\\hud_thumbnails\\backdrop.png"); 
StatBack.apply_image_surface(nCurrentX - 180,nCurrentY-230,0); 
StatBack.v_DeleteImages(); 
+1

什麼是你的圖像的路徑,你可以用ls來找到它(\\不是Unix中的路徑分隔符) – Mark 2012-03-18 14:35:51

+0

不僅是路徑分隔符'/',而且如果你放置一個前導'/'我相信它會指向文件系統的根目錄。 – Ryan 2012-03-18 14:38:20

+0

感謝您的回答,我仔細查看了谷歌,看看Unix是否有不同的文件路徑,沒有人有任何幫助。 Windows在路徑名中使用\,所以我很困惑 – 2012-03-18 14:42:59

回答

1

除非你使用某種類型的便攜包裝物將您的反斜線爲正斜槓的,你可能需要使用正斜槓:

StatBack.load_image("/Dropbox/Pirate_Entertainment/images/hud_thumbnails/backdrop.png"); 

,或者更可能的是,使用相對路徑:

StatBack.load_image("Dropbox/Pirate_Entertainment/images/hud_thumbnails/backdrop.png"); 
0

應該使用/作爲路徑分隔符,而不是\(即C++降低到)。

+1

感謝兄弟,這裏的一些人不知道如何幫助... 我只是很習慣於視覺工作室和windows,我用'\\'做目錄 – 2012-03-18 14:38:35

+0

我認爲Visual C運行庫接受/作爲路徑分隔符,所以你的代碼應該幾乎是可移植的。不知道cygwin,所以我避免暗示答案。 – CapelliC 2012-03-18 14:48:06

+0

@BrendanWebster太多競爭... – 2012-03-18 14:50:48

1

事實上,在Windows中使用正斜槓也是安全的。 ANSI C標準允許在文件名中使用正斜槓作爲路徑分隔符。

+0

好的,太棒了! 我的編程老師剛剛教我使用'\\',所以我習慣了它 – 2012-03-18 14:57:09