结构体 和 类的区别

来源:互联网 发布:淘宝pv和uv下降的原因 编辑:程序博客网 时间:2024/05/18 01:31
C与C++中结构体的比较
C中的结构体和C++中结构体的不同之处:
在C中的结构体只能自定义数据类型,结构体中不允许有函数;而C++中的结构体可以加入成员函数。
C++中的结构体和类的异同:
一、相同之处:结构体中可以包含函数;也可以定义public、private、protected数据成员;定义了结构体之后,可以用结构体名来创建对象。但C中的结构体不允许有函数;  也就是说在C++当中,结构体中可以有成员变量,可以有成员函数,可以从别的类继承,也可以被别的类继承,可以有虚函数。
二、不同之处:结构体定义中默认情况下的成员是public,而类定义中的默认情况下的成员是private的。
实际上,C中的结构体只涉及到数据结构,而不涉及到算法,也就是说在C中数据结构和算法是分离的,而到C++中一类或者一个结构体可以包含函数(这个函数在C++我们通常中称为成员函数),C++中的结构体和类体现了数据结构和算法的结合。
(各位友友们,有要补充的吗?)
原创粉丝点击