Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Opracował: Piotr DejaVu Szawdyński
Język C++

vector::swap

[metoda] Kontenery » standard C++vector zamieniają się posiadanymi danymi.

Składnia

C/C++
#include <vector>

namespace std
{
    template < class Type, class Allocator >
    class vector
    {
    public:
        void swap( vector & x );
    };
}

Argumenty

ArgumentOpis
vector& xKontener na którym ma zostać wykonana operacja zamiany zawartości.

Opis szczegółowy

Wywołanie niniejszej metody powoduje, że kontenery » standard C++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

C/C++
#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