C ++ three rules

Source: Internet
Author: User

  • Destructor)
  • Copy constructor)
  • Copy assignment operator)

C ++ three rules: If you need destructor, you must copy the constructor and value assignment operator.

To understand this sentence, first of all, we know from the perspective of "if you need destructor" that there must be a member of the pointer type in the class (otherwise we do not need to write the destructor, the default destructor can be used). Therefore, we need to write the destructor to release the memory allocated to the pointer to prevent memory leakage, so why do we say "We must copy constructors and value assignment operators"? The reason is as follows: pointer type members appear in the class. For a member with pointer type, we must avoid the problem of shallow copy. Therefore, we must copy constructors and value assignment operators. These two functions are necessary to prevent shallow copy problems.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.