std::pair vs. std::swap
Aug. 3rd, 2009 05:08 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В попытках ответить на вопрос, зачем протаскивать в std свою реализацию swap, в комментариях к посту "c++0x" у
zhtw, наткнулись на GCC Bugzilla Bug 38466.
Итог: вообще-то нельзя надеяться на то, что у std::pair будет специализированная версия std::swap, что чревато неэффективными воплощениями для случаев, когда у элементов pair есть эффективная версия swap.
Update: C++ Standard Library Closed Issues List: 482. Swapping pairs
Update2: А вот, как дела обстоят у мелко-мягких: TR1 Fixes In VC9 SP1: 16. The Swaptimization
Читайте также в моём блоге: Критическая статья о Boost Date-Time library.
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Итог: вообще-то нельзя надеяться на то, что у std::pair будет специализированная версия std::swap, что чревато неэффективными воплощениями для случаев, когда у элементов pair есть эффективная версия swap.
Update: C++ Standard Library Closed Issues List: 482. Swapping pairs
Update2: А вот, как дела обстоят у мелко-мягких: TR1 Fixes In VC9 SP1: 16. The Swaptimization
Читайте также в моём блоге: Критическая статья о Boost Date-Time library.