结构体和类的唯一区别就是: 结构体和类具有不同的默认访问控制属性
即:类中,对于未指定访问控制属性的成员,其访问控制属性为私有类型(private)
结构体中,对于未指定任何访问控制属性的成员,其访问控制属性为公有类型(public)
【注】C中的结构体完全不同于C++中的结构体:在C中的结构体只能自定义数据类型,结构体中不允许有函
数,而C++中的结构体可以加入成员函数、访问控制权限、继承、包含多态等面向对象特性。
解释:
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象
的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。在C++中,不使用结构体丝毫不会影响
程序的表达能力。C++之所以要引入结构体,是为了保持和C程序的兼容性。但有时仍会在C++中使用结构
体,是因为,可以使用结构体将不同类型数据组成整体,方便于保存数据。
C++在struct之外引入了class关键字(类),但为了保持与C程序的兼容,C++保留了struct关键字,并规定结
构体默认访问控制权限为公有类型。