【C++】class和struct关键字

class和struct用于定义类

定义:class默认开始为private成员,struct默认开始为public成员。

继承:class默认为private继承,struct默认为public继承。

class用于模板

class可用于模板用于表明类型名,此时等价于typename。

C语言风格struct

C++是兼容C语言的,C语言没有没有基于对象(OB)和面向对象(OO)的思想,只有抽象数据类型(ADT)。

如果要使C++ class的某部分数据有C风格那样,最好把这部分数据抽取出来成为一个独立的struct声明,但是不推荐继承,因为编译器支持的虚函数机制可能对class的布局做一些变化。组合,而非继承,才是推荐方法,这样才能保证C的空间布局。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章