The usage of C++ mobile constructor and mobile assignment
This article introduces the knowledge of "C++ mobile constructor and mobile assignment". Many people will encounter this dilemma in the operation of actual cases. next, let the editor lead you to learn how to deal with these situations. I hope you can read it carefully and be able to achieve something!
Mobile constructor
First, look at the usual copy constructor:
Deep copy processing is implemented in the copy constructor. Take a look at the mobile constructor:
The code construction is similar to the copy constructor, but the processing of memory is not copy but transfer. Note that the parameter type is a right value reference.
Move assignment operator
The assignment operator is similar to the constructor, let's first look at the normal assignment operator:
Take a look at the mobile assignment operator:
The routine is similar to the normal assignment budget symbol, which is also memory movement rather than copy. Note that the parameter type is a right value reference.
Use an example
The same test idea and the same result as yesterday. The speed will be increased when operating in mobile mode.
Exception
If you use it without defining a mobile constructor, an error will occur
If you use it without defining a mobile assignment operator, although there are no compilation errors, problems may occur (in this case, memory management confusion will occur)
This is the end of the introduction to "C++ mobile constructor and mobile assignment usage". Thank you for reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!