目前使用vector來當做資料儲存用的array(這邊的資料都是用copy的方式存入vector),剛好又需要在thread內要去更新vector內的資料。
所以是利用取址的方式來將資料寫回原本使用的vector內。
此時發生只要有新資料進來的時候,原本取到的位置的值會被變更。
這邊是懷疑因為vector自動重新分配大小時,會將原本的就資料搬到新的記憶體位置。
所以原本參照的位置就變成沒有使用或是被別的變數使用了,所以導致只要有新資料進來,值就錯誤的問題。
後來重新於一開始就設定vector的capacity,之後下去運作後,先前的問題就都不見了,所以有以上之推論。
不過在map上並沒有發生類似的狀況,所以這邊還需要在詳查一下吧
Subscribe to:
Post Comments (Atom)
Build docker image from multiple build contexts
Build docker image from multiple build contexts ...
-
參考資料: Input Input Manager 測試手把 :PS Analog gamepad Script語言:C# Unity 版本:3.4 Unity提供了3種輸入裝置可以使用,鍵盤、滑鼠、以及遊戲手把。 ...
-
寫法很簡單,就像下列寫法: if ( *szStr ) { .... } 因為*szStr == szStr[0],且char[]是以NULL-Terminate來判定字串是否結束,所以只要判定陣列的第一個值是不是為零,就可知道是否為空字串。 如需檢查是否為空字...
No comments:
Post a Comment