pridani poznamek s conteinery, restrukturalizace, oprava kodu
pridani poznamek ke containerum zatim pouze s vectory poznamky z hodim maji ted vlastni podslozku lehka oprava kodu vsede mozne, hlavne pridani cpp pro lepsi cteni a oprava drobnych chybek
This commit is contained in:
53
poznamky z hodin/Cviceni 2.md
Normal file
53
poznamky z hodin/Cviceni 2.md
Normal file
@@ -0,0 +1,53 @@
|
||||
- 26. 2 - čtvrtek 11:00
|
||||
|
||||
- dnes: třídy a objekty, public/protected/private, constructor/destructor
|
||||
|
||||
# Konstruktory
|
||||
- můžu přetěžovat, ale **POZOR**:
|
||||
|
||||
```
|
||||
TridaA(void) //constructor pro inicializaci promenne
|
||||
{
|
||||
this->a = 0;
|
||||
this->b = 0;
|
||||
this->c = 0;
|
||||
std::cout << "Byl zavolan konstruktor bez arg." << std::endl;
|
||||
}
|
||||
|
||||
TridaA(int a) //inicializace z argumentu constructoru
|
||||
{
|
||||
this->a = a;
|
||||
this->b = 0;
|
||||
this->c = 0;
|
||||
std::cout << "Byl zavolan konstruktor s arg." << std::endl;
|
||||
}
|
||||
|
||||
TridaA(int a, int b = 42, int c = 64)
|
||||
{
|
||||
this->a = a;
|
||||
this->b = b;
|
||||
this->c = c;
|
||||
}
|
||||
```
|
||||
|
||||
Chyby kompilatoru:
|
||||
```
|
||||
main.cpp: In function ‘int main()’:
|
||||
main.cpp:44:16: error: call of overloaded ‘TridaA(int)’ is ambiguous
|
||||
44 | TridaA obj1(1); //inicializujeme objekt
|
||||
| ^
|
||||
main.cpp:44:16: note: there are 4 candidates
|
||||
main.cpp:31:5: note: candidate 1: ‘TridaA::TridaA(int, int, int)’
|
||||
31 | TridaA(int a, int b = 42, int c = 64)
|
||||
| ^~~~~~
|
||||
main.cpp:23:5: note: candidate 2: ‘TridaA::TridaA(int)’
|
||||
23 | TridaA(int a) //inicializace z argumentu constructoru
|
||||
| ^~~~~~
|
||||
main.cpp:3:7: note: candidate 3: ‘constexpr TridaA::TridaA(const TridaA&)’
|
||||
3 | class TridaA
|
||||
| ^~~~~~
|
||||
main.cpp:3:7: note: candidate 4: ‘constexpr TridaA::TridaA(TridaA&&)’
|
||||
|
||||
```
|
||||
|
||||
- **MUSÍ TO BÝT JEDNOZNAČNÉ:**
|
||||
Reference in New Issue
Block a user