↑: [[C++|1/4]]
- Animal[[インターフェース]]に[[純粋仮想関数]]を用意する
- それを継承するクラスを作る(例だと鳥)
-
```cpp
#include <iostream>
// インターフェース Animal
class Animal {
public:
virtual ~Animal() {} // 仮想デストラクタ
virtual void makeSound() = 0; // 純粋仮想関数
};
class Bird : public Animal {
public:
void makeSound() {
std::cout << "ちゅんちゅん!" << std::endl;
}
};
int main() {
Animal* a1 = new Bird();
a1->makeSound();
delete a1;
return 0;
}
```
%% DATAVIEW_PUBLISHER: start
```dataview
TABLE WITHOUT ID
file.link as child,
id
from "zk/core"
where meta(parent_id).display = this.id
SORT id ASC
```
%%
| child | id |
| --------------------------------- | ------- |
| [[zk/core/インターフェース.md\|インターフェース]] | 1/4/2/1 |
%% DATAVIEW_PUBLISHER: end %%