Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/04/2015, 02:16
dehm
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 13 años, 7 meses
Puntos: 10
Uso de enum class. Consejos

Hola:

Me disponía a ensayar con los nuevos tipos enumerados, pero me han entrado dos dudas.

1.- Esta está relacionada con los enum en general, no con los "nuevos" enum

Si me creo un archivo externo sólo para definir tipos enumerados, y que tengan acceso a ellos otras clases, lo hago así:

Código C++:
Ver original
  1. namespace tipoColumna
  2. {
  3.     enum  {COLUMNA1, COLUMNA2,COLUMNA3,COLUMNA4};
  4. }

Definirlos de forma "anónima" es cómodo para hacer uso de ellos, puesto que en otras partes del código me refiero a ellos como:
Código C++:
Ver original
  1. if (indice.column()==tipoColumna::COLUMNA2)
  2.     {
  3.         --------------------
  4.     }

Pero no sé si es buena práctica o no.

Y la otra duda:

2.-Si intento hacer lo mismo con los nuevos tipos enumerados, ya no hay una conversión implícita entre el número y el enumerado. Entonces....¿es posible usar los nuevos tipos enumerados en funciones que aceptan un int como parámetro?
Por ejemplo, el método:
Código C++:
Ver original
  1. void setItemDelegateForColumn(int column, QAbstractItemDelegate * delegate)
no aceptará un enum "de los nuevos", entiendo yo. Por lo que no es este el uso de los nuevos enum (enum class). Pero no sé si estoy equivocado o no.

Saludos y gracias
__________________
Mi calculadora en Qt