用vector建的一个数组,需要经常移来移去的,
假设vector内部实在存放载体是一个指针,两个vector只需要交换一下指针地址就行了,不必要一定交换地址上的数据.
看<effective C++>中如何创建一个效率高且不抛异常的swap就是用这种方法,
而vector中还真有个swap成员,不知道这个的实现原理是指针交换呢,还是数据交换,我想要效率高的.

解决方案 »

  1.   

    1.如果被交换的两个vector的分配器(Allocator)相同,那么它会交换指针。
    2.如果被交换的两个vector的分配器不相同,那么它会分配复制数据更详细的请自己阅读STL源码,不同版本的STL实现可能会有些许不同。另外,类似的这种问题请发到C/C++社区才是比较适合的。
      

  2.   

    您又帮我解决了另一个疑惑
    http://topic.csdn.net/u/20100120/10/ebc13de6-0cf5-4eaa-bdea-c40402707894.html
      

  3.   

    VC/MFC比较偏向VC以及其应用
    你研究和阅读STL之类的问题去C/C++社区提问会比较合适。
    地址:C/C++社区