码迷,mamicode.com
首页 > 编程语言 > 详细

c++对象模型

时间:2016-09-04 15:53:43      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

1.结构体成员在内存中的排列顺序和声明相同,而类中不同访问节(private,protected.. 父类实例与子类实例等)的内存顺序没有强制规定。
 
2.class和struct 因为空间顺序的原因,如果要一起使用,需要把strcut组合到class里面而不是派生和继承。
3.
技术分享

 

技术分享
 
4.指针类型只是告诉编译器怎样解释一段内存中的内容,在内存表现上没有区别。这也是void*指针不能操作对象的原因,而void*强制转换的也是在编译阶段起作用。
 
 
5.强制转换是编译器做的,而dynamic_cast是运行时进行的(开销较前者大)
 
6.指针和引用之所以支持多态,是因为它们并不引发内存中任何与类型有关的内存委托操作,会受到改变的只是它们所指向内存”大小和内容解释方式“而已。
 
 
7.被合成的构造函数是根据编译器的需要而不是程序员的需要。

8.有用的默认构造函数合成以及已有构造函数扩展,将发生产在
   a.有类成员
   b.为派生类
   c.具有虚函数
   4.虚继承

c++对象模型

标签:

原文地址:http://www.cnblogs.com/manziluo/p/5839381.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!