Constructing two objects that need each other
问题 A puzzling architectural question: You have two symmetrical classes A and B . Each A / B object may privately produce a value of type IA / IB using the A.CreateIA() / B.CreateIB() methods. These values are needed by the opposite classes - A needs IB and B needs IA . The goal is to write the PairMaker.MakePair() function that constructs an interlinks a pair of A and B objects . You also have to write appropriate constructors for the A and B classes. A and B classes are in different assemblies