struct和class的区别
2004-08-08 16:55
267 查看
如果没有多态和虚拟继承,在C++中,struct和class的存取效率完全相同!简单的说就是,存取class的data member和非virtual function效率和struct完全相同!不管该data member是定义在基类还是派生类的。
如果不是为了和C兼容,C++中就不会有struct关键字。因此建议是:如果不需要与C兼容或传递参数给C程序,不要在C++中用struct。
注意class的data member在内存中的布局可不一定是data member的申明次序。C++只保证处于同一个access section的data member按照申明次序排列。
-- 《Inside The C++ Object Model》
如果不是为了和C兼容,C++中就不会有struct关键字。因此建议是:如果不需要与C兼容或传递参数给C程序,不要在C++中用struct。
注意class的data member在内存中的布局可不一定是data member的申明次序。C++只保证处于同一个access section的data member按照申明次序排列。
-- 《Inside The C++ Object Model》
相关文章推荐
- class 与struct 区别
- C++中struct与class的区别
- struct和class的区别
- struct和class的区别
- C++学习基础十三——struct和class的区别
- C#中struct与class的区别
- c# struct和class的区别
- struct和class的一些区别
- 关于C++ 里struct 和 class的区别
- struct和class的区别(转)
- c与c++中struct与class区别与联系
- struct 与 class区别
- C#中Struct与Class的区别
- c++ 中 struct 和 class 的区别
- C与C++中struct及C++中struct与class的区别
- c#中,struct和class的区别
- struct和class区别的背后
- Struct和Class的区别
- Swift中结构体(Struct)和类(Class)的区别
- struct 与class的关系与区别