Understanding C Inheritance Accessing Derived Class Private Members