Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo utilizar vectores para almacenar diferentes tipos de datos en C...

Cómo utilizar vectores para almacenar diferentes tipos de datos en C...

espacio de nombres std {

templatelt; clase T, clase A = allocatorlt; gt; struct vector {

typedef typename A::value_type value_type.

typedef typename A:: referencia de referencia

typedef A allocator_type;

typedef typename A:: puntero puntero

typedef typename; A:: size_type size_type;

// ...

vector explícito() throw(): sz(0), random_ptr() { }

// ...

void push_back(const value_typeamp; v) {

!random_ptr ?random_ptr = new T(v): new(random_ptr sz) T(v);

sz;

}

operador de referencia[](size_type ind) { return *(random_ptr ind }

size_type tamaño( ) const { return sz }

// ...

p>privado:

size_type sz;

puntero random_ptr;

};

}

Lo que estoy considerando aquí no es la reserva() involucrada en push_back(), sino el caso general. Si desea que este código funcione con main(), defina un destructor apropiado.