Ver Mensaje Individual
  #16 (permalink)  
Antiguo 15/01/2016, 04:28
aguml
 
Fecha de Ingreso: febrero-2015
Mensajes: 404
Antigüedad: 9 años, 2 meses
Puntos: 3
Respuesta: Necesito orientacion con el siguiente codigo

Cita:
Iniciado por xKuZz Ver Mensaje
Es una llamada al constructor, en realidad no es más que una forma abreviada de hacer lo siguiente:

Código C++:
Ver original
  1. struct definicion_formal {
  2.   int variable1;
  3.   int variable2;
  4.   // Constructor sin parámetros. Inicializa variable1 a 0 y variable2 a 50
  5.   definicion_formal() {
  6.     variable1 = 0;
  7.     variable2 = 50;
  8.   }
  9.   // Constructor con parámetros. Inicializa variable1 con el valor de a y variable2 con el valor de b
  10.   definicion_formal(int a, int b) {
  11.     variable1 = a;
  12.     variable2 = b;
  13. };
  14. // Por tanto si ahora declaro
  15. int main() {
  16.   definicion_formal ejemplo1; // Ejemplo 1 tiene variable1 a 0 y variable2 a 50
  17.   definicion_formal ejemplo2(3, 4); // Ejemplo 2 tiene variable1 a 3 y variable2 a 4
  18. }

Un ejemplo todavía más simple:
Código C++:
Ver original
  1. int i(5); // i se inicializa a 5
  2. int j = 5; // j se inicializa a true
  3. bool correcto(i==j); // correcto se inicializa a true
  4. bool falso = i != j; // falso se inicializa a false
Gracias por la explicación y decir que en ningún sitio vi que expliquen este modo de inicializar variables. ¿eso vale para C también o es solo a partir de alguna revisión de c++?
Otra cosa que no se que hace es esto:
using Ruta = std::vector<Posicion>;
¿que hace exactamente?
Otra cosa ¿el código que puso eferion hacia:
fila (fila)
Y me dices que eso equivaldría a inicializar la variable asi:
fila=fila
Donde la primera seria una variable miembro de la estructura y la segunda seria un parámetro pero en ambos casos se llama igual la variable y tenia entendido que eso no estaba permitido ¿podéis explicarme eso también?
Otra duda que tengo del código de eferion es si siempre daría la misma solución o cambiaría en cada ejecución. Si siempre da la misma me interesaría hacer que ese código me diera todas las soluciones correctas.
Teniendo esos temas resueltos es cuestión de tracear e intentar entender su funcionamiento.
Gracias a todos.

Última edición por aguml; 15/01/2016 a las 04:45