In both .NET and Java, the garbage collector is smart enough to detect and release circular references. Dealing with circular references in C++ isn't as simple. In the first installment of this series ...
// person.h #ifndef PERSON_H_ #define PERSON_H_ #include <string> #include <memory> #include "circular_ptr.h" using namespace std; class person { friend circular_ptr ...