我在板的路徑一樣喜歡替換列表中的元素與新的列表
list<pair<int,int> > *path;
當角色達到障礙,我需要在路徑替換所有從當前位置到對索引列表結束以新路徑結束,但保存從開始到障礙路徑相同(澄清一個小字符有起始和目的地單元格,並從開始到目的地移動,然後再次重複,以避免很多計算,我會盡量保存部分路徑沒有障礙,只是用新的障礙物替換舊的部分)。 有沒有簡單的方法來做到這一點沒有迭代?
稍後編輯以澄清: path old是[(0,0),(0,1),(1,1),(1,2),(1,3),(1,4)] (1,1),(2,...,)的新路徑搜索新路徑, 1),(2,2),(1,3),(1,4)],所以我需要替換舊路徑(1,1),(1,2),(1,3),(1, 4)與(1,1),(2,1),(2,2),(1,3),(1,4)
我很好奇你爲什麼讓'path'指向列表而不是列表? – dasblinkenlight 2013-02-24 02:48:23
你到底在做什麼?爲什麼這是一個問題(當你遇到障礙時,你的路徑到達障礙,只需返回一步,再試一次)?我隱約覺得你正在尋找'std :: list :: splice',但很難從你的問題中知道。 – us2012 2013-02-24 03:20:23
@ us2012我添加了我想要實現的功能 – Damir 2013-02-24 03:31:11