Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rule of Five.

Similar presentations


Presentation on theme: "Rule of Five."— Presentation transcript:

1 Rule of Five

2 Rule of 3 If you manage memory you need: Custom Destructor
Custom Copy Constructor Custom Assignment Operator

3 Rule of 5 If you manage memory you need: You may want to provide:
Custom Destructor Custom Copy Constructor Custom Assignment Operator You may want to provide: Move assignment operator Move copy constructor

4 Move semantics C++ allows us to specify that data should be moved from one place to another:

5 Moving Copy:

6 Moving Copy:

7 Moving Copy:

8 Moving Move:

9 Moving Move:

10 Moving Move:

11 Defining && = Rvalue reference
Move constructor/assignment take rvalue reference: Move constructor:

12 Defining && = Rvalue reference
Move constructor/assignment take rvalue reference: Move assignment:

13 Rule of 5 Why? But… Move can be more efficient than copying
Never required for program correctness, just efficiency


Download ppt "Rule of Five."

Similar presentations


Ads by Google