What's the point of iter_swap?

后端 未结 2 1288
天命终不由人
天命终不由人 2020-12-30 19:48

I was just wondering, why would anybody write this:

std::iter_swap(i, k);

instead of this?

std::swap(*i, *k);   // saved a          


        
2条回答
  •  离开以前
    2020-12-30 20:06

    From the SGI docs (here):

    [1] Strictly speaking, iter_swap is redundant. It exists only for technical reasons: in some circumstances, some compilers have difficulty performing the type deduction required to interpret swap(*a, *b).

提交回复
热议问题