Múltiples teclas únicas en un índice múltiple -- algorithm campo con stl campo con boost-multi-index camp Relacionados El problema

multiple unique key in a multi index


0
vote

problema

Español

Estoy tratando de almacenar objetos en un contenedor $_POST['field'][1]10 .

Estos objetos son todos únicos, se pueden recuperar por 2 teclas separadas (también únicas).

  <input>111  

Cuando intento encontrar cualquier elemento de ese índice por entero, utilice el siguiente código

  <input>2  

Pero no se compila y obtengo el siguiente error

  <input>3  

Cuando uso el mismo código con cadena, funciona bien; ¿Sabes lo que estoy haciendo mal?

Original en ingles

I am trying to store objects in a boost multi-index container.

These objects are all unique can be retrieved by 2 separate keys (unique as well).

namepsace bm = boost::multi_index;  class MyObj {  string  strid_;  int32_t numid_; };  //! associative container searchable by ClOrdId and Sunofia Id.   typedef boost::multi_index_container< MyObj, bm::indexed_by<   bm::ordered_unique<     bm::member<MyObj,string,&MyObj::strid_>   >,   bm::ordered_unique<     bm::member<MyObj,int32,&MyObj::numid_>   > >             > Cntr; Cntr cntr_;    

When I try to find any element of that index by integer I use the following code

 int32_t to_find = 12;  Cntr::iterator it = cntr_.find(id); 

but it doesn't compile and I get the following error

error: invalid conversion from xe2x80x98intxe2x80x99 to xe2x80x98const char*xe2x80x99 

When I use the same code with string it works fine; do you know what I am doing wrong?

        

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 
  res.writeProcessing1  

Se accede a cada índice por separado (a través de res.writeProcessing2 ) y tiene sus propias funciones de miembro, iteradores, etc. (en caso de que no pueda usar res.writeProcessing3 , res.writeProcessing4 es de tipo res.writeProcessing5 ). Más información sobre el doctor tutorial .

 
auto it = cntr_.get<1>().find(id); 

Each index is accessed separately (via get) and has its own member functions, iterators, etc. (In case you can't use auto,it is of type Cntr::nth_index<1>::type::iterator.) More info on the doc tutorial.

 
 
   
   

Relacionados problema

0  Typedef en VC ++ & Boost  ( Typedef in vc boost ) 
Estoy aprendiendo sobre BOOST MULTIINDEX y estoy siguiendo este tutorial . El problema es que no puedo compilar el código de la sección de índices hashed (...

0  BOOST.MULTIINDEX ¿Fallo de sustitución de plantillas?  ( Boost multiindex template substitution failure ) 
Estoy intentando usar BOOST :: Multi_Index_Container y parece estar ahogándose en la magia de la plantilla de metaprogramación en algún lugar. Estoy obteniend...

1  Multi_index_Container y Controles de lista virtual  ( Multi index container and virtual list controls ) 
Me estoy divirtiendo mucho con el Multi_Index_Container. Esto es básicamente lo que necesito: Control de lista virtual. Ordenar los artículos de múltip...

7  ¿Están las llaves extraídas Multi_Index en caché?  ( Are boost multi index extracted keys cached ) 
Estoy usando Boost :: Multi_Index con un tipo de datos que me gustaría indexar según su tamaño. Sin embargo, la función de miembro de tamaño () de este tipo d...

0  boost.multiindex y addres de valor como clave  ( Boost multiindex and addres of value as key ) 
Tengo una estructura: struct user_context { struct user_id; struct user_name; struct user_address; boost::int64_t user_id() const; const st...

8  BOOST Multi-índice contenedor vs Un contenedor de asignación de varios niveles basado en STD :: UNOdered_map (Mapa de MAPS)  ( Boost multi index container vs a multi level mapping container based on stduno ) 
Recientemente encontré a Boost :: Multi_Index_Container y tengo curiosidad por su desempeño en comparación con mi propia implementación de un contenedor simil...

4  Tener una clave compuesta para el mapa hash en C ++  ( Having a composite key for hash map in c ) 
Tengo una estructura de datos que tiene, <Book title>, <Author>, and <rate> Dado que el título del libro o el autor se puede duplicar, me gustaría cons...

0  SIGSEGV mientras exploraba Boost :: Multi_Index  ( Sigsegv while exploring boostmulti index ) 
He estado sacando mi cabello para descubrir este Segfault y decidí pedir ayuda. Tengo un contenedor boost::multi_index6 , que contiene (string, string, dou...

2  Búsqueda de comodines dentro de una estructura de datos BOOST.MULTIINDEX?  ( Wildcard search inside a boost multiindex data structure ) 
Estoy tratando de optimizar mi aplicación reduciendo los viajes de ida y vuelta a mi base de datos. Como parte de ese esfuerzo, he estado moviendo algunas de ...

4  Parámetro de la plantilla para impulsar el contenedor de múltiples índice  ( Template parameter to boost multi index container ) 
Necesito crear una clase genérica que contenga contenedor de Multiindex como almacenamiento. Cuando compile, da un error al menos donde he definido la vista d...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos