C++中类与结构体的区别

相信有一点专业知识的人都知道,C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。在很大程度上,标准C++是标准C的超集。实际上,全部C程序也是C++程序,然而,二者之间有少许区别。下面是最重要的区别:模块化

结构是C的一部分,C++从C中继承告终构,在语法上,类与结构十分类似,在关系上,这二者也很接近,在C++中,结构的做用被拓宽了,进而使结构成为了类的一种替代方法。实际上,类与结构的唯一区别在于:在默认状态下,结构的全部成员均是公有的,而类的全部成员是私有的。除此以外,类与结构是等价的,也就是说,一个结构定义了一个类的类型。函数

 C++同时包含这两个等价的关键字struct与class基于3个方面的缘由。第一,增强结构的能力。在C中,结构提供了一种数据分组方法,于是让结构包含成员函数是一个小小的改进。第二,因为类与结构是相互关联的,全部现有C代码到C++的移植变得更容易。第三,因为类与结构的等价性,提供两个不一样的关键字可使类定义自由发展,为了保持C++与C的兼容性,结构定义必须始终受它的C定义的结束。调试

即便在有些地方可使用结构来代替类,但尽可能不要这么作,为了清楚起见,该用类的地方就用class关键字,该用C结构的地方就用struct关键字。继承

相关文章
相关标签/搜索