Ejemplo de sobrecarga de operadores

#include <string.h> #include <conio.h> #include <iostream> using namespace std; class Palabra { public: int P; char pal[100]; bool operator<(Palabra a) { //cantidad de espacios ocupados en los arreglos a.P = strlen(a.pal); P = strlen(pal); //comparación de datos return a.P < P; } bool operator>(Palabra a) { //cantidad de espacios ocupados en los arreglos a.P = strlen(a.pal); P = strlen(pal); //comparación de datos return a.P > P; } bool operator==(Palabra a) { //cantidad de espacios ocupados en los arreglos a.P = strlen(a.pal); P = strlen(pal); //comparación de valores return a.P == P; } }; int main() { Palabra a, b; //ingreso de palabras cout << "Ingrese una palabra:\n"; gets_s(a.pal); cout << "Ingrese otra palabra:\n"; gets_s(b.pal); //comparación de arreglos if (a > b) cout << "La segunda palabra es mas larga."; if (a < b) cout << "La primera palabra es mas larga."; if (a == b) cout << "Las dos palabras son iguales."; _getch(); return 0; }
Este código compara los espacios usado en dos arreglos y los compara para decidir si uno es mayor que el otro o si son iguales, por medio de la sobrecarga de operadores se simplifica el código dentro del "main" y hace que sea más sencillo comprenderlo.

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.