typedef boost::interprocess::managed_shared_memory::segment_manager
segment_manager_t; // Works fine, segment_manager is a class
typedef boost::interprocess::adaptive_pool
allocator_t; // Can't do this, adaptive_pool is a template
La idea es que si quiero cambiar entre el impulso entreprocesamiento 'varias opciones diferentes para memoria compartida y asignadores, simplemente modifico el typedefs. Lamentablemente, los asignadores son plantillas, por lo que no puedo tipear el asignador que quiero usar.Alias para una plantilla C++?
¿Hay alguna manera de lograr un alias para una plantilla en C++? (Excepto por el obvio #define ALLOCATOR_T boost::interprocess::adaptive_pool
)
¡Gracias! El método de envoltura hizo el truco. No pude obtener el ejemplo C++ 0x trabajando en gcc 4.4.1 usando -std = C++ 0x. 'template typedef boost :: interprocess :: adaptative_pool allocator_t;' gives' error: declaración de plantilla de 'typedef'' –
porgarmingduod