C语言和C++中结构体的区别

描述

同样是结构体,看看在C语言和C++中有什么区别?

首先是作为一种自定义数据类型,C语言中定义结构体变量必须要加上 struct 关键字,C++可以不加,直接用结构体名。

第二个,C语言的结构体,只能放一些变量,如果想放一些函数进去,也只能使用结构体指针间接的去操作。

但是在 C++ 中,结构体就丰富了很多,不仅可以有变量,还可以写函数。通过结构体变量也能去调用函数。

第三个,C++中的结构体,可以支持构造函数。

所谓构造函数,就是函数名与结构体名相同的函数,并且没有返回值。

在这个函数里面,一般可以对结构体成员做初始化。

有了构造函数,当然也有析构函数,做一些回收资源的操作。

第四个,C++中的结构体还具备了继承的特性。比如来个结构体 A,再来个结构体 B,因为结构体 B 中的成员有一部分跟 A 一样,所以可以直接使用继承的语法,把 A 继承过来。不过这些都已经属于面向对象的范畴。

关于 C 和 C++ 中结构体的区别,还有哪些,欢迎在评论区补充。

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分