登录后复制 class Dog { public: class Animal { public: Animal(Dog* dog) { m_Dog = dog; m_Age = 1; m_Name = dog->m_Info; // 可以访问宿主类对象 } string m_Name; int getAge() { return m_Age; } private: Dog* m_Dog; int m_Age; }; public: Dog() :m_Info("哮天犬"), m_Animal(this) { } void showInfo() { cout << m_Animal.m_Name << endl; //cout << m_Animal.m_Age << endl; /*不可访问*/ cout << m_Animal.getAge() << endl; } private: string m_Info; Animal m_Animal; }; int main() { Dog dog; dog.showInfo(); return 0; } 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44. 输出: 登录后复制 哮天犬 1 1.2. 内部类嵌套类可以访问外部宿主类的私有成员。 原创作者: u_15698411 转载于: https://blog.51cto.com/u_15698411/11918616