#include <iostream> using namespace std; // TODO 1: Create CoreDriver class // - Constructor prints "Core driver initialized" class CoreDriver{ public: CoreDriver(){cout<<"Core driver initialized"<<endl;} }; // TODO 2: Create CommDriver class // - Publicly inherits from CoreDriver // - Constructor prints "Comm driver initialized" class CommDriver : public CoreDriver{ public: CommDriver(){cout<<"Comm driver initialized"<<endl;} }; // TODO 3: Create SpiDriver class // - Publicly inherits from CommDriver // - Constructor takes int speed // - Prints "SPI driver initialized" // - Stores speed // - Function prints "SPI speed <speed>" class SpiDriver:public CommDriver{ int internal_speed; public: SpiDriver(int speed){ cout<<"SPI driver initialized"<<endl; internal_speed = speed; } void print(){cout<<"SPI speed "<<internal_speed;} }; int main() { int speed; cin >> speed; // TODO 4: Create SpiDriver object // TODO 5: Call function to print SPI speed SpiDriver spi_obj(speed); spi_obj.print(); return 0; }
Test Cases
Test Results
Input
8
Expected Output
Core driver initialized Comm driver initialized SPI driver initialized SPI speed 8