An introduction the the opaque pointer pattern and its implementation in modern C++ using std::unique_ptr.