POO - ¿Diferencia entre usar una constructora-copiadora a Objeto = Objeto?

Iniciado por xaps, 13 Noviembre 2013, 01:52 AM

0 Miembros y 1 Visitante están viendo este tema.

xaps

Cita de: El Benjo en 16 Noviembre 2013, 06:13 AM
Pues sí, parece que es cierto y es precisamente lo que se comentaba que las reglas para lenguajes del tipo C# y JAVA manejan distinto las instrucciones "Obj1 = Obj2" de la forma en que lo haría C++.

Creo que todos los que nos involucramos en este tema hemos aprendido algo nuevo. De verdad yo no tenía idea de que en C++ se pudiera realizar la asignación en esa forma.
Me alegro de que tu también hayas sacado algo de esto.

Por cierto, acabo de enteder el motivo de tu pregunta:
Cita de: El Benjo en 13 Noviembre 2013, 20:44 PM
NOTA: Creo que esto puede aclarar todo. ¿Te has preguntado por qué los objetos se pasan a una función por referencia y no por valor?

Lo decias porque, al pasar un objeto por valor, hay que hacer una copia del objeto en questión y si el lenguaje de programación no permitia hacer una copia de un objeto mediante asignación, tampoco deberia permitirlo al pasarlo a una función por valor, ¿cierto?
Te comentaré algo más sobre C++ con lo que no había caido antes: Todos los tipos de datos en C++ son objetos, incluso los int. Esto podría explicar porqué se puede hacer la copia de un objeto mediante la asginación.
"The programmers of tomorrow are the wizards of the future" - Gave Newel

El Benjo

Cita de: xaps en 16 Noviembre 2013, 18:47 PM
Te comentaré algo más sobre C++ con lo que no había caido antes: Todos los tipos de datos en C++ son objetos, incluso los int. Esto podría explicar porqué se puede hacer la copia de un objeto mediante la asginación.

Sí, a eso me refería precisamente con esa pregunta. :)

Pues sí, así es, a diferencia de C en lenguajes orientados a objetos los tipos fundamentales también son objetos, esto lo puedes apreciar mejor cuando escribes código de C# por ejemplo, cuando escribes el nombre de una variable de tipo integer seguida de un punto puedes ver los métodos de los que dispone dicho objeto.
www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.

xaps

Cita de: El Benjo en 16 Noviembre 2013, 20:15 PM
Pues sí, así es, a diferencia de C en lenguajes orientados a objetos los tipos fundamentales también son objetos, esto lo puedes apreciar mejor cuando escribes código de C# por ejemplo, cuando escribes el nombre de una variable de tipo integer seguida de un punto puedes ver los métodos de los que dispone dicho objeto.

No me había fijado nunca en eso. Creía que era una característica de C++, pero por lo que dices es algo que tienen la mayoría de los lenguajes de programación con POO.

Muchas gracias a los dos por vuestra ayuda!

Saludos
"The programmers of tomorrow are the wizards of the future" - Gave Newel