Virtual public inheritance : Public « Class « C++






Virtual public inheritance

  
#include <iostream>
using namespace std;
class base 
{
 public:
   int i;
 };

class derived1 : virtual public base 
{
 public:
   int j;
 };

class derived2 : virtual public base 
{
 public:
   int k;
 };

class derived3 : public derived1, public derived2 {
 public:
   int sum;
};

int main(void)
{
   derived3 object;

   object.i = 10;             // now i is unambiguous
   object.j = 20;
   object.k = 30;
   object.sum = object.i + object.j + object.k;
   cout << object.i << " ";
   cout << object.j << " " << object.k << " ";
   cout << object.sum << endl;
}
  
    
  








Related examples in the same category

1.Illustrates the use of a public variableIllustrates the use of a public variable
2.Assign the public object member address to a pointerAssign the public object member address to a pointer
3.public class extending
4.field in struct is public by default
5.Class with only public fields and methods
6.public data field
7.public inheritance from three parent classes