https://github.com/solareenlo/42old-cpp_module_04
Old-CPP Module 04
https://github.com/solareenlo/42old-cpp_module_04
42 42born2code 42cursus cpp98
Last synced: 4 months ago
JSON representation
Old-CPP Module 04
- Host: GitHub
- URL: https://github.com/solareenlo/42old-cpp_module_04
- Owner: solareenlo
- Created: 2021-11-16T03:23:49.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-11-17T03:02:03.000Z (over 3 years ago)
- Last Synced: 2024-12-30T09:16:06.232Z (5 months ago)
- Topics: 42, 42born2code, 42cursus, cpp98
- Language: C++
- Homepage:
- Size: 38.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 42Old-CPP_Module_04
## ex03
- Abstract and Interface
- interface は `can-do` 関係,abstract は `is-a` 関係.
- Interface とは,純粋仮想関数だけで構築された Abstract class の特別なバージョンのこと.
- Interface は,can-do 関係と呼ばれる関係性を構築する.
- Interface は,そこから派生したクラスが「何ができるか」を表現するもの.## ex02
### Abstract class
- > Defines an abstract type which cannot be instantiated, but can be used as a base class.
- [abstract class](https://en.cppreference.com/w/cpp/language/abstract_class)## ex01
### Shallow copy and deep copy
- [13.16 — Shallow vs. deep copying](https://www.learncpp.com/cpp-tutorial/shallow-vs-deep-copying/)## ex00
### Virtual function
- [virtual function specifier](https://en.cppreference.com/w/cpp/language/virtual)### explicit
- > Specifies that a constructor or conversion function (since C++11) or deduction guide (since C++17) is explicit, that is, it cannot be used for implicit conversions and copy-initialization.
- Ref: [explicit specifier](https://en.cppreference.com/w/cpp/language/explicit)
- [What does the explicit keyword mean?](https://stackoverflow.com/questions/121162/what-does-the-explicit-keyword-mean)