作者SweepingMonk ((((((((((()))))))))))
看板EE_DSnP
标题[问题] 请问如何得知iterator指到array中的第几个位置?
时间Mon May 12 00:08:21 2008
as title
在写erase(iterator pos)的时候
发现如果要用memmove来搬动elememts的话
可能需要知道pos指到的是array的第几个element
请问除了用数的之外,有别的方法吗?
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.70.199.99
1F:推 bnsblue:可以直接access到iterator里面存的pointer 然後相减 05/12 00:29
2F:→ bnsblue:刚刚才问过饶神XD 05/12 00:30
3F:推 HigherKuo:可是我如果这样写idx = (pos._node-_data)/sizeof(T); 05/13 00:31
4F:→ HigherKuo:就会呼叫到constructor,然後顺序就不对了 =.= 05/13 00:32
5F:推 bnsblue:应该不用除以sizeof(T)吧@@ 05/13 00:34
6F:推 HigherKuo:惊!!果然不用!感谢阿阿阿! 05/13 00:37