2013-06-12 70 views

回答

12

使用std::to_wstring

std::wstring wstr = std::to_wstring(dw); 
+0

嗨克里斯,如果我使用WSTR =的std :: to_wstring(DW),我得到的錯誤是「一個以上的過載功能的參數匹配」。請建議糾正錯誤。 – Rajasekhar

+1

@Rajasekhar,嘗試明確地將其轉換爲'unsigned long long'IIRC。它曾經只有一些重載而不是所有的重載。 – chris

+0

如果我們從「unsigned long」轉換爲「unsigned long long」,會導致任何問題嗎? – Rajasekhar

2

如果您使用的是沒有std::to_wstring舊的編譯器,而不是考慮lexical_cast(例如,與Boost)。

順便說一句,如果你想創建wstr作爲一個空字符串,只需wstring wstr;就足夠了。

+0

感謝您的建議「just wstring wstr;」 – Rajasekhar

+0

@JerryCoffin已將'lexical_cast'包含到標準中了嗎? –

+0

@Koushik,不,它沒有,但Boost幾乎是C++開發人員的必備工具。 – chris

0

在C++ 03,你可以這樣做:

std::wstringstream stream; 
stream << dw; 
wstr = stream.str();