Sobrecarga de constructores en C++

Requisitos previos: Constructores en C++ 
En C++, podemos tener más de un constructor en una clase con el mismo nombre, siempre que cada uno tenga una lista diferente de argumentos. Este concepto se conoce como sobrecarga de constructores y es bastante similar a la sobrecarga de funciones
 

  • Los constructores sobrecargados esencialmente tienen el mismo nombre (nombre exacto de la clase) y se diferencian por el número y tipo de argumentos.
  • Se llama a un constructor dependiendo del número y tipo de argumentos pasados.
  • Al crear el objeto, se deben pasar argumentos para que el compilador sepa qué constructor debe llamarse. 
     

CPP

// C++ program to illustrate
// Constructor overloading
#include <iostream>
using namespace std;
 
class construct
{
 
public:
    float area;
     
    // Constructor with no parameters
    construct()
    {
        area = 0;
    }
     
    // Constructor with two parameters
    construct(int a, int b)
    {
        area = a * b;
    }
     
    void disp()
    {
        cout<< area<< endl;
    }
};
 
int main()
{
    // Constructor Overloading
    // with two different constructors
    // of class name
    construct o;
    construct o2( 10, 20);
     
    o.disp();
    o2.disp();
    return 1;
}

Producción: 

0
200
 

Artículos relacionados : 
 

Este artículo es una contribución de I.HARISH KUMAR . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *