#include <iostream>
using namespace std;

class B;

class A
{
public:
 	void MyMethod() { std::cout << "In A" << std::endl; }

private:
    friend class B;
	A() {};
};

class B
{
	public:
		A createA()
		{
			A result; //cannot access private member declare in class 'A'
    		return result;
		}
};

int main() {
	B b;
	A a = b.createA();
	a.MyMethod();
	return 0;
}