Jak przeciążać std :: swap ()
std::swap()
jest używany przez wiele standardowych kontenerów (takich jakstd::list
istd::vector
) podczas sortowania, a nawet przydziału.
Ale standardowe wdrożenieswap()
jest bardzo uogólniony i raczej nieefektywny dla niestandardowych typów.
W ten sposób wydajność można uzyskać przez przeładowaniestd::swap()
z niestandardową implementacją specyficzną dla typu. Ale jak możesz go zaimplementować, aby był używany przez standardowe pojemniki?