您好,登錄后才能下訂單哦!
內部內:
#include <iostream> using namespace std; class CPeople { public: int a; CPeople( int a ) { this->a = a; } private: class Kayer { public: int a; CPeople* cp; Kayer(CPeople* p) : cp(p) { a = 12; } void fun() { cout << cp->a << endl; } }; public: Kayer* kayer = new Kayer(this); }; int main() { CPeople c( 13 ); cout << "CPeople a : " << c.a << endl; c.kayer->fun(); cout << "=======================================" << endl; c.a = 17; cout << "CPeople a : " << c.a << endl; c.kayer->fun(); return 0; }
結果:
解析 :
① 內部類也屬于嵌套類。例如 :Kayer就是CPeople的內部類
② 內部類(Kayer)訪問外部類(CPeople)需要使用引用/指針。本篇使用指針 Kayer* kayer = new Kayer(this); 這樣可以保證數據的同步。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。