Sobrecargar operadores de inserción de flujo de entrada y salida en C++
- Usos de los operadores de inserción de flujo de entrada y salida
- Pasos para sobrecargar los operadores de inserción de flujo de entrada y salida en C++
Puede realizar una sobrecarga de operadores en C++. Este artículo trata sobre los operadores de inserción de secuencias de entrada y salida.
Los operadores son una forma de crear expresiones en C++. Puede sobrecargarlos, lo que significa que puede definir nuevos significados para los operadores.
Los operadores de inserción de flujo de entrada y salida leen o escriben información de un archivo. En C++, el operador de inserción de flujo <<
se usa para la salida, mientras que >>
se usa para la entrada.
Antes de que comencemos a sobrecargar estos operadores, primero debemos entender estos puntos. cin
y cout
son objetos de las clases istream
y ostream
.
Como función global, estos operadores deben estar sobrecargados. Y necesitamos agregarlos como amigos si queremos darles acceso a la información privada de los miembros de la clase.
Es importante tener en cuenta que en el caso de sobrecarga del operador, el objeto del lado izquierdo del operador debe contener el operador si está sobrecargado como miembro.
Usos de los operadores de inserción de flujo de entrada y salida
Los siguientes son los usos de los operadores de inserción de secuencias de entrada y salida:
- Para insertar datos de entrada en un programa.
- Para insertar datos de salida en un programa.
- Para crear una tubería que se pueda usar para pasar datos de un proceso a otro.
Pasos para sobrecargar los operadores de inserción de flujo de entrada y salida en C++
Se pueden seguir los siguientes pasos para sobrecargar los operadores de inserción de flujo de entradas y salidas en C++:
-
Cree una clase con dos miembros de datos públicos: flujo de entrada y salida.
-
Cree dos funciones públicas, a saber, salida
operador<<()
e entradaoperador>>()
. -
En ambas funciones, cree un ciclo que itere a través de cada carácter de la cadena de entrada usando
getline()
e insértelos en la cadena de salida usandoputchar()
. -
En ambas funciones, utilice
return 0;
para terminar el programa.
Analicemos un ejemplo.
#include <iostream>
using namespace std;
class Demo {
private:
int x;
int y;
public:
Demo() {
x = 0;
y = 0;
}
Demo(int x1, int y1) {
x = x1;
y = y1;
}
friend ostream &operator<<(ostream &output, const Demo &S) {
output << "x1 : " << S.x << " y1 : " << S.y;
return output;
}
};
int main() {
Demo S1(6, 2), S2(3, 19);
cout << "1st Value : " << S1 << endl;
cout << "2nd Value : " << S2 << endl;
return 0;
}
Producción :
1st Value : x1 : 6 y1 : 2
2nd Value : x1 : 3 y1 : 19
Haga clic aquí para comprobar el funcionamiento del código mencionado anteriormente.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook