C++ 速查手冊
9.13 - 巢狀類別
類別中也可定義類別,這樣的類別被稱為巢狀類別 (nested class) ,舉例如下
#include <iostream>
class Demo {
public:
class Demo2 {
public:
Demo2(int a) {
d2a = a;
}
int d2a;
};
Demo2 *d2;
void do_something() {
d2 = new Demo2(34);
std::cout << d2->d2a << std::endl;
}
};
int main() {
Demo d;
d.do_something();
return 0;
}
/* 《程式語言教學誌》的範例程式
http://kaiching.org/
檔名:u0913.cpp
功能:示範 C++ 的類別
作者:張凱慶*/
Demo2 為在 Demo 中定義的類別
class Demo2 {
public:
Demo2(int a) {
d2a = a;
}
int d2a;
};
d2 為 Demo 的資料成員,用來建立 Demo2 的物件,注意, d2 是指標
*d2;
編譯執行,結果如下
$ g++ u0913.cpp |
$ ./a.out |
34 |
$ |
相關教學影片