Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: digimikeh en 7 Marzo 2019, 19:39 pm



Título: palabra class en la declaración de una variable..
Publicado por: digimikeh en 7 Marzo 2019, 19:39 pm
Buenas ..

Cual es el objetivo de la siguiente sintaxis ?

Código
  1. #include "ActorY"
  2.  
  3. class Actor{
  4.  
  5. public:
  6.  
  7.     class ActorY _actorY;     //Que pinta class aqui?
  8.  
  9. };
  10.  
  11.  

Saludos y gracias.


Título: Re: palabra class en la declaración de una variable..
Publicado por: Loretz en 7 Marzo 2019, 20:22 pm
Es lo que suele llamarse un "Elaborated Type Specifiers".

Se usa, por ejemplo, aunque no parece que fuera tu caso, cuando una variable tiene el mismo nombre que un tipo; por ejemplo:

Código
  1. class A {
  2. public:
  3.    int i;
  4. };
  5.  
  6. class Actor {
  7. public:
  8.    class A objetoA;     //Que pinta class aqui?
  9.    int A;               // que buena idea ponerle A!
  10. };
  11.  
  12. int main()
  13. {
  14.    Actor a;
  15.    a.objetoA.i = 5;
  16.    a.A = 3;
  17. }

También se puede usarse para impresionar a los amigos, acompañado de la frase "así es más expresivo, ¿verdad?"



Título: Re: palabra class en la declaración de una variable..
Publicado por: srWhiteSkull en 7 Marzo 2019, 20:23 pm
https://www.zator.com/Cpp/E4_13_2.htm


Título: Re: palabra class en la declaración de una variable..
Publicado por: digimikeh en 8 Marzo 2019, 04:32 am
Ya veo, entonces es una practica para que el compilador no se confunda (digo no se confunda, en vez de decir que no encuentra ambiguo el código).. asi con la palabra class diferencia qué es un tipo y que es una variable..

gracias por las respuestas..