C++類繼承內部類例項
阿新 • • 發佈:2018-12-26
水一貼
類繼承和內部類,以及內部類繼承例項
先看tran.h檔案
/* * train.h * * Created on: 2018年7月25日 * Author: admin */ #include<stdio.h> #include<string.h> #include<iostream> using namespace std; #ifndef TRAIN_H_ #define TRAIN_H_ class Z { public :static string str; string scr; public :void doublefoo() { cout<<"Hello World"<<endl; } }; class A { public :static int k; int h; public: class B : public Z//B 為A 的內部類,繼承Z 類 { public : void foo(A a) { cout<<k<<endl;//OK cout<<a.h<<endl; } }b; }; class C : public A { public : static int A; }; #endif /* TRAIN_H_ */
然後寫個mian.cpp測試一下。
#include<iostream> #include<stdio.h> #include<string.h> #include"train.h" using namespace std; string Z::str="World Hello"; int A::k=3; int main() { C c; A a; a.h=10; a.b.foo(a); c.b.foo(a); //c.b.foo(a); a.b.doublefoo(); cout<<a.b.str<<endl; c.b.doublefoo(); a.b.scr=">>>>>>>>>>>>>>>>>>"; cout<<a.b.scr+"?"<<endl; return 0; }
測試