Que son plantillas multiset?

Iniciado por nolasco281, 24 Febrero 2014, 20:23 PM

0 Miembros y 1 Visitante están viendo este tema.

nolasco281

Hola como lo dice el titulo me gustaria saber que son plantillas multiset como trabajan y para que sirven talvez alquien me da una idea mas clara de la definicion.

muchas gracias.

PD: estaba leyendo un poco de biblioteca de plantillas estandar (SLT). y asi me llego la duda.
Lo que se puede imaginar... se puede programar.

eferion

un multiset es una especie de set con la peculiaridad de que admite duplicados.

Código (cpp) [Seleccionar]

void main( )
{
  std::set< int > setItem;
  std::multiset< int > multisetItem;

  setItem.insert( 10 );
  setItem.insert( 20 );
  setItem.insert( 10 );

  multisetItem.insert( 10 );
  multisetItem.insert( 20 );
  multisetItem.insert( 10 );

  for ( auto it = setItem.begin( ); it != setItem.end( ); ++it )
    std::cout << *it << " ";
  std::cout << std::endl;

  for ( auto it = multisetItem.begin( ); it != multisetItem.end( ); ++it )
    std::cout << *it << " ";
  std::cout << std::endl;


Salida del programa:


10 20
10 10 20

nolasco281

Gracias.

Esto quiere decir, que si admite datos duplicados tambien puede admitir datos no duplicados como el login de una persona? o el nombre especifico de esa persona.?

Oh hay otro metodo que se usa para los no duplicados?

Gracias saludos.

Lo que se puede imaginar... se puede programar.

eferion

No he entendido tu pregunta.

En general cada contenedor está preparado para un uso más o menos concreto:

* vector: uso general. Respeta el orden de inserción y permite el acceso aleatorio.

* set: cuando no se admiten duplicados, los resultados aparecen ordenados.

* multiset: resultados ordenados y con duplicados

* map: el índice es un tipo diferente de int o los índices no son consecutivos. No admite índices duplicados

* multimap: map con índices duplicados.

* stack y queue: pilas

* list: vector implementado a base de listas enlazadas. Los tiempos de inserción son constantes

* array: vector de tamaño fijo, no puede crecer.

nolasco281

Entiendo pense que podia utilizar multiset para datos no duplicados tambien.

Ya me quedo claro. Y me dejaste con algunas investigaciones tambien. Gracias saludos.
Lo que se puede imaginar... se puede programar.