可能重複的跨平臺方式:
Qt equivalent of PathAppend?構建了Qt的FS路徑
簡單地說:沒有的Qt 4有Python的os.path.join
的模擬?
長篇故事:我需要在Right Way(TM)中爲應用程序目錄添加一個相對路徑QCoreApplication::applicationDirPath()
,以便代碼不依賴於文件系統目錄分隔符。
僅僅加入QStrings並使用「/」作爲分隔符是一個很好的解決方案?
可能重複的跨平臺方式:
Qt equivalent of PathAppend?構建了Qt的FS路徑
簡單地說:沒有的Qt 4有Python的os.path.join
的模擬?
長篇故事:我需要在Right Way(TM)中爲應用程序目錄添加一個相對路徑QCoreApplication::applicationDirPath()
,以便代碼不依賴於文件系統目錄分隔符。
僅僅加入QStrings並使用「/」作爲分隔符是一個很好的解決方案?
您可以直接使用「/」或使用QDir::separator()
。但是通常使用QDir
(這會將「/」轉換爲平臺特定的路徑分隔符)。
只要在Qt世界中使用「/」即可。 要轉換非Qt類和函數等的路徑,請使用QDir :: toNativeSeparators(path)。
操作符重載可能會被濫用,但重載'operator /'路徑不是。 'QCoreApplication :: applicationDirPath()/「MySubDir」'是完全合理的代碼。恥辱Qt4沒有。 – MSalters 2010-07-07 14:12:47
爲什麼不使用[QDir](http://doc.qt.nokia.com/4.6/qdir.html)或類似的東西? – codymanix 2010-07-07 12:44:34
因爲我沒有看到完全符合我需要的QDir方法。你能更具體地說明你的建議嗎? – dpq 2010-07-07 12:52:44