Que ventajas trae el usar sobrecarga de operadores y en que tipo de problemas es necesario ocupar la sobrecarga?
Gracias
|
|
#1 (permalink) |
![]() Fecha de Ingreso: febrero-2006
Mensajes: 229
|
Que ventajas tiene la sobrecarga de operadores?
Que ventajas trae el usar sobrecarga de operadores y en que tipo de problemas es necesario ocupar la sobrecarga? Gracias |
|
|
|
|
|
#2 (permalink) |
![]() Fecha de Ingreso: junio-2006
Mensajes: 1.588
|
Re: Que ventajas tiene la sobrecarga de operadores?
La ventaja depende del problema. Hay problemas en los que puedes ahorrarte mucho trabajo usando la sobrecarga de operadores.
Por poner un ejemplo sencillo, imagina que hiciste una clase para el manejo de matrices, ahora quieres sumar 2 matrices y almacenarlo en una tercera. Lo primero que se puede hacer es un par de ciclos for anidados e ir sumando elemento mas elemento. Con la sobrecarga de operadores (suponiendo que sobrecargaste el operador "=" y el "+") solo tendrías que hacer: c=a+b; que en el fondo tendrían el par de ciclos, pero así es más fácil de leer y agregas nuevas funcionalidades. Saludos
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba: |
|
|
|
|
|
#3 (permalink) |
![]() Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.439
|
Re: Que ventajas tiene la sobrecarga de operadores?
Cita:
Te voy a poner otro ejemplo real para que veas la utilidad.
Iniciado por -thor-
Se programar en c y ahora estoy leyendo un manual de c++(el que esta en c con clase),bueno el manual lo lei,la sobrecarga de funciones la entendi,pero aun no logro entender bien el uso de la sobrecarga de operadores.
Que ventajas trae el usar sobrecarga de operadores y en que tipo de problemas es necesario ocupar la sobrecarga? Gracias Imagina que no tienes la clase string, o simplemente que tu la quiere implementar de manera distinta. Si alguna vez manejaste lenguajes de script como Javascript o actionscript o cosas asi, podras recordar que podías hacer algo asi: string variable="Hola "+ nombre + ", como estas"; Pues bien sabras que ni en C ni C++ puedes hacer semejante cosa asi nadamas. Tendrias que tener una clase string(o como la quieras llamar), sobrecargar el operador "+" y el operador "=" para poder obtener el mismo resultado. En cuanto a clases, es realmente muy util para poder llenar todos los campos que necesites con tan solo usar un operador. O incluso como lo he trabajo ahora yo, con el operador de indexacion "[]", que lo utilizo para sacar y meter informacion a un array dentro de mi clase pero con un filtrado de datos. Saludos |
|
|
|