Ir al contenido principal

Destacado

Desarrollo web Bootcamp

  Introducción a la Programación La programación es el proceso de diseñar y escribir instrucciones que las computadoras entienden para realizar tareas específicas. Estas instrucciones se conocen como código , y permiten a los desarrolladores crear aplicaciones, sitios web, juegos y mucho más. Lenguajes de Programación Comunes en el Desarrollo Web En el desarrollo web, los lenguajes más utilizados incluyen: HTML : Define la estructura del contenido en una página web. CSS : Estiliza y da diseño a los elementos de HTML. JavaScript : Agrega interactividad y funcionalidades dinámicas a las páginas web.      PHP y Python : Son lenguajes de servidor para manejar la lógica y los datos. SQL : Sirve para gestionar bases de datos. Sintaxis Básica La sintaxis es un conjunto de reglas que determina cómo escribir código en un lenguaje específico. Es fundamental para que el programa funcione correctamente. Por ejemplo: javascript let mensaje = "¡Hola Mundo!" ; console . log (mens...

SOBRECARGA DE OPERADORES


¿QUE ES LA SOBRECARGA DE OPERADORES?


Esto se utiliza para hacer que un operador (+,-,*, /) haga más cosas que sumar numeros enteros,decimales etc.
Podemos hacer que nos sume matrices, vectores,
etc. Si definimos el operador + para que sume matrices, no dejara de hacer lo que
hacia antes (sumar enteros, decimales, etc).
La forma para definir la funcion sobrecargada es:
tipo_a_devolver nombre_clase::operator( parametros );
Vamos a ver un ejemplo para sumar dos vectores:
class vector{
int x, y, z;
public:
vector vector::operator+( vector );
};

vector vector::operator+( vector p )
{
x=p.x+x;
y=p.y+y;
z=p.z+z;
return( *this );
}
void main(void)
{
vector a, b, c;
c=a+b;
}
Este ejemplo tiene mas “cosillas” que los anteriores. Cuando en el main hacemos la
llamada a+b, el compilador lo transforma en a.operator+(b), cuando vamos a la
funcion, el vector p es una copia del b ( o sea p.x=b.x, p.y=b.y, p.z=b.z ) y las
coordenadas x, y, z son las del vector a, que es el objeto con el cual llamamos a la
funcion. El objeto por defecto es el que queda a la izquierda del operador y el objeto
que normalmente se suele pasar es el de la derecha. Lo de this es muy sencillo, this
es un puntero al objeto por defecto, es decir el objeto que llama a la funcion. En el
ejemplo anterior, al llamar a la funcion +, el objeto que llama a la funcion es a, por lo
que this apuntara a “a”. Como la funcion devuelve un vector, y this es un puntero a
un objeto tipo vector tendremos que devolver el contenido de this ( *this=a ). Si la
llamada a la funcion es del tipo d=a+b+c, el resultado de la suma de los vectores b y
c, quedaria guardado en b, pudiendo afectar a calculos posteriores que se hagan
con este vector.
Para evitar esto, habria que declarar un vector auxiliar local a la funcion, quedando
de la forma:

vector vector::operator+( vector p )
{
vector h;
h.x=p.x+x;
h.y=p.y+y;
h.z=p.z+z;
return( h );
}


Descarga Libros en c y c++ https://mega.nz/folder/ZckjDaLR#v5Bgwuv3ypM8uxOoKw90Wg

Comentarios

Entradas populares