看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《renderer (rendering)》之銘言: : ※ 引述《khoguan (Khoguan Phuann)》之銘言: : : 至於最上面那個 child.erase(i++); 要進入那個函式之前,也會有 : : 一個 sequence point, 所以 i++ 的 side effect 的部份也會完成, : : i 這個 iterator 已經順利的指向下一個 map element 了。而erase() : 這麼說 即使是 int 的 i++ 也是先加再留下原值囉 ??? 之前寫那樣一篇就期望人家理解,的確是強人所難 :) 我只能先簡單說,並無規定先後,由編譯器自便,但是到達 sequence point 時,該evaluate的值,該做的 side effect 都得要已經完成。至於哪個地方要有 sequence point 則有 明確規定。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 編輯: khoguan 來自: 220.130.208.168 (07/01 22:38)