std::pair::swap
De cppreference.com
void swap(pair& other) noexcept(/* véase más abajo */); |
(desde C++11) (hasta C++20) |
|
constexpr void swap(pair& other) noexcept(/* véase más abajo */); |
(desde C++20) | |
Intercambia first
con other.first
y second
con other.second
.
Contenido |
[editar] Parámetros
other | - | Par de valores a intercambiar. |
[editar] Valor de retorno
(Ninguno)
[editar] Excepciones
Especificación noexcept: (desde C++11)
En la expresión de más arriba, el identificador |
(hasta C++17) | ||||||
Especificación noexcept: (desde C++11)
|
(desde C++17) |
[editar] Ejemplo
Ejecuta este código
#include <iostream> #include <utility> #include <string> int main() { std::pair<int, std::string> p1, p2; p1 = std::make_pair(10, "prueba"); p2.swap(p1); std::cout << "(" << p2.first << ", " << p2.second << ")\n"; }
Salida:
(10, prueba)
[editar] Informes de defectos
Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estándares de C++ publicados anteriormente.
ID | Aplicado a | Comportamiento según lo publicado | Comportamiento correcto |
---|---|---|---|
LWG 2456 | C++11 | La especificación noexcept está mal formada.
|
Se hizo funcionar. |
[editar] Véase también
Intercambia los valores de dos objetos (plantilla de función) |