none
declarando arrays en base a constante...

    Pregunta

  • Hola!

    Me he dado cuenta accidentalmente que declarar un array en base a una constante (como largo del array) da error si esta dentro de una clase...  Por ejemplo:

    class Persona{
    
         const int MAX_CHAR_LEN = 20;
         char grupo[MAX_CHAR_LEN];
    
         //Esta ultima linea marca un error:
         //Una referencia de miembro no estatico debe ser
         //relativa a un objeto especifico.
    
    };
    

    Sin embargo si lo declaro en main, fuera de la clase, no obtengo ningun error..

    int main() {
         const int MAX_CHAR_LEN = 20;
         int grupo[MAX_CHAR_LEN];
         //Sin errores     
    }

    Por qué la diferencia?

    gracias.

    sábado, 08 de julio de 2017 1:16