Resumen
BRANDON JORDAN GIL CAAMAL
MATERIA:
PROGRAMACIÓN ORIENTADA A OBJETOS
CARRERA:
INGENIERÍA EN SISTEMAS COMPUTACIONALES
SEMESTRE: 2-B
NOMBRE DEL DOCENTE:I.S.C. JESÚS ANTONIO SANTOS TEJERO
FECHA: 05/03/2012
Al igual que C++, C# permite sobrecargar operadores para utilizarlos en clases propias. Esto hace posible que utilizar un tipo de datosdefinido por el usuario parezca tan natural y lógico como utilizar un tipo de datos fundamental. Por ejemplo, podría crear un nuevo tipo de datos denominado ComplexNumber para representar un númerocomplejo y proporcionar métodos que realicen operaciones matemáticas en esos números mediante operadores aritméticos estándar, como utilizar el operador + para sumar dos números complejos.
Para sobrecargarun operador, se escribe una función que tenga el nombre del operador seguido del símbolo del operador que se va a sobrecargar. Por ejemplo, a continuación se muestra cómo sobrecargar el operador +:C#
public static ComplexNumber operator+(ComplexNumber a, ComplexNumber b)
Todas las sobrecargas de operador son métodos estáticos de la clase. También tenga encuenta que si sobrecarga el operador de igualdad (==), también debe sobrecargar el operador de desigualdad (!=). Los operadores < y >, y los operadores < = y > = también se deberíansobrecargar en pares.
La lista completa de operadores que se pueden sobrecargar es la siguiente:
* Operadores unarios: +, -, !, ~, ++, --, true, false
* Operadoresbinarios: +, -, *, /, %, &, |, ^, <<, >>, ==, !=, >, <, >=, <=
El ejemplo de código siguiente crea una clase ComplexNumber que sobrecarga los operadores + y -:
C#
public class ComplexNumber{
private int real;
private int imaginary;
public ComplexNumber() : this(0, 0) // constructor...
Regístrate para leer el documento completo.