欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C語言

當前位置:主頁 > 軟件編程 > C語言 >

json error: Use of overloaded operator [] is ambiguous錯誤的解決方

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊: 次

最近在使用json數(shù)組時, 用0做下標有問題(Use of overloaded operator [] is ambiguous), 但用1做下標沒有問題, 我也是醉了。 網(wǎng)上到處搜了一下, 發(fā)現(xiàn)也有網(wǎng)友遇到。

// Note:
//int x = a[0].GetInt();     // Error: operator[ is ambiguous, as 0 also mean a null pointer of const char* type.
int y = a[SizeType(0)].GetInt(); // Cast to SizeType will work.
int z = a[0u].GetInt();     // This works too.
0u = 
SizeType(0)

Json::Value作為數(shù)組時,讀取0位置時,出現(xiàn)錯誤:Use of overloaded operator [] is ambiguous

Use of overloaded operator [] is ambiguous (with operand types 'const Json:Value' and 'int' )
  void Parse(constJson::Value &jsonObject) {
   rmb = jsonObject[0].asDouble();
  }

Json:Value[]運算符支持輸入的非負整型,即UInt或unsigned int。

而0作為索引值,也可能為空指針輸入, 類型檢查無法通過。

修改如下即可:

rmb = jsonObject[0U].asDouble();

或者:

rmb = jsonObject[SizeType(0)].asDouble();

說明:  0U  表示無符號的整數(shù),這樣寫在自己的數(shù)組操作符重載的時候 區(qū)分 0 是 數(shù)值0 還是 空指針了....

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對我們的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接

網(wǎng)頁制作CMS教程網(wǎng)絡編程軟件編程腳本語言數(shù)據(jù)庫服務器

如果侵犯了您的權利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導致的法律后果,本站均不負任何責任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權所有