How to use simple class with derived class and pointers in C++

1 Answer

0 votes
#include <iostream>

using std::cout;
using std::endl;

class Base {
	char language[30];
public:
	void setLanguage(char *s) {
		strcpy(language, s);
	}
	void printLanguage(void) {
		cout << language << endl;
	}
};

class Derived : public Base {
	int programmers;
public:
	void setProgrammers(int n) {
		programmers = n;
	}
	void printProgrammers() {
		cout << programmers << endl;
	}
};

int main()
{
	Base *pb;
	Base bo;

	Derived *pd;
	Derived dobj;

	pb = &bo;

	pb->setLanguage("C++");
	pb->printLanguage(); // C++

	pb = &dobj;
	pb->setLanguage("C");
	pb->printLanguage(); // C

	bo.printLanguage(); // C++
	dobj.printLanguage(); // C

	pd = &dobj;
	pd->setProgrammers(15);
	pd->printProgrammers();

	return 0;
}


/*
run:

C++
C
C++
C
15

*/

 



answered Feb 24, 2018 by avibootz
edited Feb 28, 2018 by avibootz

Related questions

1 answer 196 views
1 answer 148 views
1 answer 144 views
2 answers 199 views
1 answer 187 views
1 answer 173 views
1 answer 241 views
...