C++ | Herencia | Pregunta 11

#include<iostream> using namespace std;    class Base { public :     int x, y; public:     Base(int i, int j){ x = i; y = j; } };    class Derived : public Base { public:     Derived(int i, int j):x(i), y(j) {}     void print() {cout << x <<» «<< y; } };    int main(void) {     Derived … Continue reading «C++ | Herencia | Pregunta 11»

C++ | Herencia | Pregunta 4

#include<iostream>     using namespace std; class P { public:    void print()  { cout <<» Inside P»; } };     class Q : public P { public:    void print() { cout <<» Inside Q»; } };     class R: public Q { };     int main(void) {   R r;    r.print();   return 0; } (A) Dentro de … Continue reading «C++ | Herencia | Pregunta 4»

Diferencia entre la clase base y la clase derivada en C++

Clase base : una clase base es una clase en el lenguaje de programación orientada a objetos , de la cual se derivan otras clases. La clase que hereda la clase base tiene todos los miembros de una clase base y también puede tener algunas propiedades adicionales. Los miembros de la clase Base y las … Continue reading «Diferencia entre la clase base y la clase derivada en C++»

C++ | Herencia | Pregunta 13

#include<iostream> using namespace std;    class Base1 { public:     char c; };    class Base2 { public:     int c; };    class Derived: public Base1, public Base2 { public:     void show()  { cout << c; } };    int main(void) {     Derived d;     d.show();     return 0; } (A) Error del compilador en “cout << c;» … Continue reading «C++ | Herencia | Pregunta 13»

Modos de visibilidad en C++ con ejemplos

Cuando una clase base se deriva de una clase derivada con la ayuda de heritage , la accesibilidad de la clase base por parte de la clase derivada se controla mediante modos de visibilidad. La clase derivada no hereda el acceso a miembros de datos privados. Sin embargo, hereda un objeto principal completo, que contiene … Continue reading «Modos de visibilidad en C++ con ejemplos»

C++ | Herencia | Pregunta 1 – Part 4

#include<iostream>     using namespace std; class Base1 {  public:      Base1()      { cout << » Base1’s constructor called» << endl;  } };     class Base2 {  public:      Base2()      { cout << «Base2’s constructor called» << endl;  } };     class Derived: public Base1, public Base2 {    public:      Derived()      {  cout << «Derived’s constructor called» << endl;  … Continue reading «C++ | Herencia | Pregunta 1 – Part 4»

Polimorfismo en tiempo de ejecución en varios tipos de herencia en C++

C++ permite a los usuarios utilizar el concepto de polimorfismo en tiempo de ejecución utilizando funciones virtuales para cualquier tipo de herencia . A continuación se muestra cómo implementar el polimorfismo en tiempo de ejecución en todos los tipos de herencia: Herencia Única: // C++ program to demonstrate Run Time // Polymorphism in Single Inheritance … Continue reading «Polimorfismo en tiempo de ejecución en varios tipos de herencia en C++»

C++ | Herencia | Pregunta 2

¿Producción? #include <iostream>   using namespace std;    class Base1 {  public:      ~Base1()  { cout << » Base1’s destructor» << endl; } };      class Base2 {  public:      ~Base2()  { cout << » Base2’s destructor» << endl; } };      class Derived: public Base1, public Base2 {    public:      ~Derived()  { cout << » Derived’s destructor» << … Continue reading «C++ | Herencia | Pregunta 2»

Clase base virtual en C++

Las clases base virtuales se utilizan en la herencia virtual para evitar que aparezcan múltiples «instancias» de una clase determinada en una jerarquía de herencia cuando se utilizan herencias múltiples. Necesidad de clases base virtuales: Considere la situación en la que tenemos una clase A. Esta clase A es heredada por otras dos clases B … Continue reading «Clase base virtual en C++»

C++ | Herencia | Pregunta 14

Considere el siguiente programa en C++. #include<iostream> using namespace std; class A { public:      A(){ cout <<«1»;}      A(const A &obj){ cout <<«2»;} };    class B: virtual A { public:     B(){cout <<«3»;}     B(const B & obj){cout<<«4»;} };    class C: virtual A { public:    C(){cout<<«5»;}    C(const C & obj){cout <<«6»;} };    class D:B,C { … Continue reading «C++ | Herencia | Pregunta 14»