Constructors and Destructors Practice
Uppgift
Swipe to start coding
- Finish the implementation of the ResourceHolder class constructors.
- Create and implement a default constructor.
- Create and implement a constructor with parameters.
- Create and implement a copy constructor.
- Create and implement a destructor.
Lösning
solution
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
class ResourceHolder {
public:
ResourceHolder()
: p_data(nullptr) {}
ResourceHolder(int value)
: p_data(new int(value)) {}
ResourceHolder(const ResourceHolder& other)
: p_data(new int(*other.p_data)) {}
~ResourceHolder()
{
delete p_data;
}
int* p_data;
};
int main()
{
ResourceHolder obj1(100);
ResourceHolder obj2(obj1);
ResourceHolder obj3;
*obj1.p_data = -100;
std::cout << *obj1.p_data << ' ' << *obj2.p_data << ' ' << obj3.p_data;
}
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 2. Kapitel 9
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
class ResourceHolder {
public:
int* p_data;
};
int main()
{
ResourceHolder obj1(100);
ResourceHolder obj2(obj1);
ResourceHolder obj3;
*obj1.p_data = -100;
std::cout << *obj1.p_data << ' ' << *obj2.p_data << ' ' << obj3.p_data;
}
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal