Last active
March 28, 2019 10:26
-
-
Save kateolenya/94e354c4d3d1928bb4b649a6ea04b13e to your computer and use it in GitHub Desktop.
Example usage of keyword 'virtual' in C++
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
using namespace std; | |
class Device { | |
public: | |
Device() { | |
cout << "Device constructor called" << endl; | |
} | |
void turn_on() { | |
cout << "Device is on." << endl; | |
} | |
}; | |
class Computer: virtual public Device { | |
public: | |
Computer() { | |
cout << "Computer constructor called" << endl; | |
} | |
}; | |
class Monitor: virtual public Device { | |
public: | |
Monitor() { | |
cout << "Monitor constructor called" << endl; | |
} | |
}; | |
class Laptop: public Computer, public Monitor {}; | |
int main() { | |
Laptop Laptop_instance; | |
Laptop_instance.turn_on(); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment