Język C++
vector::swap
[metoda] Kontenery vector zamieniają się posiadanymi danymi.Składnia
#include <vector>
namespace std
{
template < class Type, class Allocator >
class vector
{
public:
void swap( vector & x );
};
}
Argumenty
Opis szczegółowy
Wywołanie niniejszej metody powoduje, że kontenery
vector zamieniają się posiadanymi danymi. Kontenery muszą być tego samego typu.
Dane z kontenera przekazanego poprzez argument trafiają do kontenera, który wywołał niniejszą metodę, natomiast dane z kontenera wywołującego niniejszą metodę trafiają do kontenera przekazanego poprzez argument.
Złożoność obliczeniowa metody: O(1).
Przykład
#include <vector>
#include <iostream>
int main()
{
typedef std::vector < int > LiczbyT;
LiczbyT v1;
LiczbyT v2;
for( int i = 1; i < 10; i++ )
v1.push_back( i );
for( int i = 100; i < 103; i++ )
v2.push_back( i );
std::cout << "v1.size() = " << v1.size() << std::endl;
std::cout << "v2.size() = " << v2.size() << std::endl;
v1.swap( v2 );
std::cout << "v1.size() = " << v1.size() << std::endl;
std::cout << "v2.size() = " << v2.size() << std::endl;
return 0;
}
Standardowe wyjście programu:
v1.size() = 9
v2.size() = 3
v1.size() = 3
v2.size() = 9
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.