Título: [Duda] Funciones Publicado por: Zodiak98 en 11 Julio 2013, 04:56 am Bueno es qué me puse a trabajar con un source enorme de un mmorpg para tratar de desarrollar conocimiento sobre este lenguaje pero a medida qué lo veia me encontre con estos 2 condicionales:
Código
Como pueden notar en las lineas: Código
Título: Re: [Duda] Funciones Publicado por: eferion en 11 Julio 2013, 08:20 am Las funciones no tienen operadores de indirección.
Lo que sucede es que una función puede devolver algo... y ese algo si puede tener operadores de indirección o, directamente, ser un puntero. Ejemplo: Código
De todas formas, visto tu nivel te recomiendo empezar con cosas más sencillas... conseguirás metas más fácilmente y eso te motivará más que lo que estás intentando hacer ahora. Título: Re: [Duda] Funciones Publicado por: amchacon en 11 Julio 2013, 10:20 am Las funciones no tienen operadores de indirección. Las funciones no, pero un puntero a una clase sí ;)Título: Re: [Duda] Funciones Publicado por: Zodiak98 en 11 Julio 2013, 19:26 pm Las funciones no tienen operadores de indirección. Lo que sucede es que una función puede devolver algo... y ese algo si puede tener operadores de indirección o, directamente, ser un puntero. Ejemplo: Código
De todas formas, visto tu nivel te recomiendo empezar con cosas más sencillas... conseguirás metas más fácilmente y eso te motivará más que lo que estás intentando hacer ahora. Y cual es la diferencia entre hacerlo con paréntesis y sin paréntesis ? Por lo qué pude ver los qué tienen paréntesis son punteros qué no apuntan hacía ningún otro objeto si no hacía los datos miembros de la clase. Título: Re: [Duda] Funciones Publicado por: rir3760 en 12 Julio 2013, 03:48 am Las funciones no tienen operadores de indirección. Desconozco cual sea el caso en C++ pero en C es posible (y confuso) aplicar (o no, es al gusto) los operadores de indirecion y "dirección de" en el caso de funciones. Por ejemplo este programa:Código Es valido. ---- Y cual es la diferencia entre hacerlo con paréntesis y sin paréntesis ? Esto tienes que explicarlo mejor ya que todos los ejemplos hasta el momento involucran llamadas a función y, por ende, paréntesis.Por lo qué pude ver los qué tienen paréntesis son punteros qué no apuntan hacía ningún otro objeto si no hacía los datos miembros de la clase. No. Tienes que revisar la expresión por partes. Si tomamos el ejemplo de eferion, la sentencia en cuestión es:Código
Los pasos al evaluar la expresión son: 1) La llamada a función "func()" resulta en un puntero de tipo "poo *". 2) Cuando se trabaja con punteros a estructuras o clases se puede utilizar el operador "->" para aplicar indireccion y acceder al campo indicado (a la derecha del operador y en este caso de nombre "a"). 3) En el mentado campo (indicado por el paso anterior) se almacena el valor 7. Un saludo Título: Re: [Duda] Funciones Publicado por: eferion en 12 Julio 2013, 09:21 am Y cual es la diferencia entre hacerlo con paréntesis y sin paréntesis ? Por lo qué pude ver los qué tienen paréntesis son punteros qué no apuntan hacía ningún otro objeto si no hacía los datos miembros de la clase. Pues a ver, si tu tienes Código
Y deseas recuperar el puntero a la cadena forzosamente tienes que llamar a la función Cadena. Hacer esa llamada te va a retornar un puntero que puedes usar inmediatamente dentro de la misma instrucción. Código: int main( ... ) |