Ver Mensaje Individual
  #4 (permalink)  
Antiguo 01/12/2014, 03:00
Pantaláimon
 
Fecha de Ingreso: julio-2006
Ubicación: Barcelona
Mensajes: 244
Antigüedad: 18 años, 4 meses
Puntos: 32
Respuesta: Crear plantilla dynamic. Lo que viene a ser tuple para struct, hacerlo par

La idea es hacer algo así:
Código C++:
Ver original
  1. template <typename T, typename... Ts>
  2. union variant<T, Ts...> {
  3.   variant() {};  
  4.  
  5.   template<typename U>
  6.   std::conditional<
  7.     std::is_same<U, T>,
  8.     // si U == T, es el tipo correcto en el campo head actual
  9.     typename variant(const U& u) : head(u)
  10.     { },
  11.     // si U != T, no es el tipo correcto así que hay que seguir buscando
  12.     typename variant(const U& u) : tail(u)
  13.     { }
  14.   >
  15.  
  16.   ~variant() {};
  17.  
  18.   T head;
  19.   variant<Ts... > tail;
  20. };
pero esto no compila.
__________________
github.com/xgbuils | npm/xgbuils