2015-03-18 51 views
0

這可能是一個簡單的問題,但我不知道答案。我嘗試過使用Google搜索,但我不知道要谷歌。我需要爲JSON表值(用戶名字符串到用戶名錶值)分配一個變量。我看到了一個例子MSDN上像這樣的東西:卡薩布蘭卡:將變量分配給JSON表值

obj2[L"password"] = json::value::string(U("password")); 

但是,如果我刪除了報價,並把在變量名,它的錯誤。我有一種感覺,這與「U」有關。但是,我真的不知道這個「U」被稱爲什麼(一個迭代器?)或者如何改變它。你能幫我一下嗎?

回答

0

經過一番搜索和創造性的解決問題後,我終於找到了解決這個問題的辦法。關於這個問題很少有文檔,但是,我確定U被稱爲宏 - 在卡薩布蘭卡它將(幾乎)任何類型的字符串轉換爲「utility :: string_t」形式。它從字面上這樣做,不接受變量。

爲了解決這個問題,我只是宣稱「密碼」和「用戶名」爲:

utility::string_t password 
utility::string_t username 

然後和他們一起工作是正常的。希望這可以幫助任何人解決同樣的問題!

0

我有同樣的問題,你有。我想你的解決方案,但我不能做這樣的工作:

utility::string_t text = "value1"; //no suitable constructor exists from  const char to basic string 

所以尋找其他方法,我發現,這也適用:

auto text = U("value1"); 

後分配工作過:

answer[L"key1"] = web::json::value::string(text); 
相關問題