2013-06-25 145 views
4

我有東西VS模板像雙斜槓//在路徑中 - 我可以使用單斜槓嗎?

string mypath = "C:\\custom\\file.jpg"; 

我想使C:\定製\部分有一個模板替換參數$ userpath $。有什麼方法可以避免使用雙斜槓?

我想什麼寫的是:

string mypath = SOMETHING("C:\custom\file.jpg") 

不得到逃脫\ c和\ f和形成的有效路徑。可能嗎?

+0

你可以看一下原始字符串字面量,或者你可以只使用一個正斜槓,並讓它成爲*小*更便攜。 – chris

回答

6

對於路徑,你應該能夠使用單個向前斜線作爲分隔符:

std::string mypath = "c:/custom/file.jpg"; 
3

嘗試原始字符串字面量:

string mypath = R"(C:\custom\file.jpg)"; 
1

試圖讓使用雙反斜槓字符,因爲在C++中所有的語法和編譯器理解這一點。如果您的VS模板\\雙反斜槓產生一個\單反斜槓,請使用4反斜槓\\\\正確產生\\雙反斜槓。

+1

它只是不起作用。因爲我正在使用一個斜線,它認爲我正在逃避下一個角色。沒關係,所以我正在使用雙斜槓,a-a-and ...我正在開雙斜線!不是單身,而是雙重!只是瘋了... –

相關問題