#include <iostream>

using std::cout;

class base1 {
public:
	virtual void print() const { cout << "base1 printing"; }
};

class base2 {
public:
	virtual void print() const { cout << "base2 printing"; }
};

class derived : public base1, public base2 { };

int main() {
	derived obj;
	// obj.print(); // error: request for member ‘print’ is ambiguous
	obj.base2::print();

	return 0;
}
