Biblioteki C/C++
ptr_vector
[szablon klasy] Kontener reprezentujący tablicę wskaźników danego typu.Składnia
#include <boost/ptr_container/ptr_vector.hpp>
namespace boost
{
template
<
class T,
class CloneAllocator = heap_clone_allocator,
class Allocator = std::allocator < void *>
>
class ptr_vector
: public ptr_sequence_adapter < T, std::vector < void *, Allocator >, CloneAllocator >
{
};
}
Opis szczegółowy
Kontener
ptr_vector jest odpowiednikiem kontenera
vector. Istotną różnicą między kontenerami jest fakt, że kontener
ptr_vector przyjmuje wskaźniki na obiekty, zamiast obiektów. Obiekty dodane do kontenera są zwalniane za pomocą operatora
delete
.
Przykład
#include <boost/ptr_container/ptr_vector.hpp>
#include <cstdio>
void wypisz( const boost::ptr_vector < int > & v )
{
printf( "Elementy kontenera (%d):\n", v.size() );
for( size_t i = 0; i < v.size(); i++ )
printf( "\n%d\n", v[ i ] );
}
int main()
{
boost::ptr_vector < int > kontener;
kontener.push_back( new int( 123 ) );
kontener.push_back( new int( 345 ) );
wypisz( kontener );
kontener.clear();
kontener.push_back( new int( 777 ) );
wypisz( kontener );
return 0;
}
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.