call constructor from parent for three level extending
#include <iostream>
#include <string.h>
using namespace std;
class Base
{
public:
Base(char *str) { strcpy(message, str); };
void show_base(void) { cout << message << endl; };
protected:
char message[256];
};
class Level1 : public Base
{
public:
Level1(char *str, char *base) : Base(base) {
strcpy(message, str);};
void show_level1(void) { cout << message << endl; } ;
protected:
char message[256];
};
class Lowest : public Level1
{
public:
Lowest(char *str, char *level1, char *base) :
Level1(level1, base) { strcpy(message, str); };
void show_lowest(void)
{
show_base();
show_level1();
cout << message << endl;
};
protected:
char message[256];
};
int main(void)
{
Lowest bottom("L", "m", "e");
bottom.show_lowest();
}
Related examples in the same category