c语言struct和c++struct的区别

1.定义

  c语言中struct是用户自定义数据类型(UDT),是一些变量的集合体;c++中struct是抽象数据类型(ADT),能给用户提供接口,能定义成员函数,能继承,能实现多态

2.成员权限设置

  c语言中,struct没有权限设置;c++中struct有权限设置,默认的成员权限是public,还可以通过设置private来隐藏成员

3.声明struct变量的方式

  c语言中,声明一个struct变量需要在前面加struct:struct 结构体名 变量名 或者不加struct使用typedef;c++中声明一个struct变量可以不加struct:结构体名 变量名,为了兼容c语言,也可以加struct

c语言struct和c++struct的区别

参考资料: 

https://blog.csdn.net/yanzhenbo1/article/details/53063699