elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Que significa esta sintaxis?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Que significa esta sintaxis?  (Leído 2,319 veces)
digimikeh

Desconectado Desconectado

Mensajes: 191


Ver Perfil
Que significa esta sintaxis?
« en: 11 Marzo 2019, 03:20 am »


Muy buenas..

Estoy siguiendo unos tutoriales de Unreal Engine y me tope con algo que no habia visto:

Código
  1. float CurrentScale = OurVisibleComponent->GetComponentScale().X;
  2.  

Mi duda está precisamente en la sintaxis de GetComponentScale().X;

Es primera vez que veo esa terminación  ().X;

Cual sería el prototipo de esa clase de funcion ?

Gracias de antemano.


En línea

Dungeons & dragons;
dragons.Attack();
srWhiteSkull


Desconectado Desconectado

Mensajes: 444



Ver Perfil WWW
Re: Que significa esta sintaxis?
« Respuesta #1 en: 11 Marzo 2019, 05:29 am »

Te devuelve una estructura, FVector. Esto es algo normal para quien está acostumbrado a la programación en C/C++.

https://api.unrealengine.com/INT/API/Runtime/Core/Math/FVector/index.html


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: Que significa esta sintaxis?
« Respuesta #2 en: 11 Marzo 2019, 10:14 am »

Te pongo otro caso de ejemplo para que lo veas en otra situación, pero la respuesta de srWhiteSkull es correcta tambien:
Código
  1. // uso una struct para que los miembros sean publicos, pero tambien sirve usando clases
  2. struct MyStruct{
  3.    double a;
  4.    double b;
  5. };
  6.  
  7. class MyClass{
  8.    MyStruct private_struct;
  9.  
  10.    public:
  11.        MyStruct getStruct()const{
  12.            return this->private_struct;
  13.        }
  14. };
  15.  
  16. int main(){
  17.    MyClass *p_class = new MyClass;
  18.    p_class->private_struct.a = 10;
  19.    // ...
  20.    cout << p_class->getStruct().a << endl; // salida: 10
  21. }

Si por ejemplo la <struct> tuviera una función que fuese <getA()> también puedes usar eso y hacer:
Código
  1. p_class->getStruct().getA();

Como ves sirve para "concatenar". Puedes ir analizando de izquierda a derecha cada paso. Tienes un puntero a <MyClass> que al llamar a <getStruct()> devolvería la <private_struct> que tiene la clase como miembro. Pero a esa <struct> le aplicas el <.a> para que devuelva sólo el valor a de toda la <struct>.
Esto también te permite concatenar más de dos funciones o miembros. Si trabajas con POO te encontrarás esto en códigos que usan varias clases y estas están relacionadas. Suerte :-X
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
digimikeh

Desconectado Desconectado

Mensajes: 191


Ver Perfil
Re: Que significa esta sintaxis?
« Respuesta #3 en: 11 Marzo 2019, 16:28 pm »

Muchas gracias ambos, me ha quedado claro... 

Antes le tenia terror a C++, pero con vosotros he aprendido bastante, y creo que ese miedo que le tenia realmente no tenia sentido, se programar en C#, pero creo que quedare definitivamente con C++, no me importa estar escribiendo mas, se pasa muy bien.

Gracias nuevamente.
En línea

Dungeons & dragons;
dragons.Attack();
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
que significa esta linea
Programación C/C++
mapers 3 2,774 Último mensaje 13 Julio 2010, 21:12 pm
por Horricreu
a que refiere esta sintaxis
Programación C/C++
fafafa01 2 1,768 Último mensaje 3 Enero 2017, 14:30 pm
por ivancea96
Tengo un problemilla y es que no veo que esta mal en la sintaxis de mi programa
Programación C/C++
pablombf 2 2,300 Último mensaje 28 Octubre 2017, 13:29 pm
por pablombf
[Pregunta]: ¿Qué significa esta alerta?
Desarrollo Web
Leguim 6 3,533 Último mensaje 5 Diciembre 2019, 08:23 am
por Agente Naranja
consulta sobre esta sintaxis..
Programación C/C++
digimikeh 3 6,688 Último mensaje 15 Septiembre 2020, 15:34 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines