#include <iostream>
using namespace std;

class Parent
{
public:
	Parent(int childId): id(childId) {}
	void printId() {cout << id << endl;}
protected:
	int id;
};

class Child1: public Parent
{
public:
	Child1(): Parent(42) {}
	void foo() {cout << "My id is " << id << endl;}
};

class Child2: public Parent
{
public:
	Child2(): Parent(5566) {}
	void bar() {cout << id << " is the best!" << endl;}
};

int main() {
	Child1 c1;
	c1.printId();
	c1.foo();
	
	Child2 c2;
	c2.printId();
	c2.bar();
	return 0;
}
