Debugging dump files in Windows

Source: Internet
Author: User

I remember reading this book when I was in Guangzhou a few years ago, but it was rough and not fully integrated. It may be that the basis of C ++ was relatively weak. This book has not been written after the migration, so it seems like this in the last one hour of reading time.

The first chapter focuses on the C ++ object model and mainly analyzes the structure of the C ++ object model. It also makes some comparisons with the C language. For example, it analyzes why C ++ introduces class, the reason is actually relatively simple, that is, struct is not suitable for the idea of C ++ Oo, and it is too abrupt to extend to the template. The main story is that C ++ is not much less efficient than C ++, and although the mechanism of adding virtual functions increases the cost of space, but it has won better scalability. It mainly depends on how the user gets it.

The second chapter explains the constructor. It focuses on the situations in which the compiler generates default constructor, in which case 4. 1 is a class member that contains constructor, 2 is a parent class with default constructor, 3 is a virtual base class with default constructor, and 4 is a virtual function used to initialize a virtual table. Next we will explain how to copy constructor. Just like the default constructor, the compiler will automatically generate the constructor without any reason. It also needs to be generated by the compiler under specific circumstances!

Chapter 3 data semantics: An empty class occupies a char space in a common C ++ compiler. The reason for this is that it is used to identify the class. The class space size is also related to the syntax and boundaries supported by the language itself. For example, a 5-byte class may be expanded to 8 bytes, which can improve access efficiency on 32-bit machines. The class data member storage sequence C ++ standard does not have to be rigid, most compilers store according to the sequence declared by the member variables, and static member variables are stored in the global storage area. The storage of non-static members is generally stored in the declared order, which is related to the compiler. In the inheritance system, the class size is related to whether the class contains virtual functions and boundary alignment.

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.