首先是作为一种自定义数据类型,C语言中定义结构体变量必须要加上 struct 关键字,C++可以不加,直接用结构体名。
第二个,C语言的结构体,只能放一些变量,如果想放一些函数进去,也只能使用结构体指针间接的去操作。
但是在 C++ 中,结构体就丰富了很多,不仅可以有变量,还可以写函数。通过结构体变量也能去调用函数。
第三个,C++中的结构体,可以支持构造函数。
所谓构造函数,就是函数名与结构体名相同的函数,并且没有返回值。
在这个函数里面,一般可以对结构体成员做初始化。
有了构造函数,当然也有析构函数,做一些回收资源的操作。
第四个,C++中的结构体还具备了继承的特性。比如来个结构体 A,再来个结构体 B,因为结构体 B 中的成员有一部分跟 A 一样,所以可以直接使用继承的语法,把 A 继承过来。不过这些都已经属于面向对象的范畴。
关于 C 和 C++ 中结构体的区别,还有哪些,欢迎在评论区补充。
-
C语言
+关注
关注
180文章
7597浏览量
136114 -
函数
+关注
关注
3文章
4303浏览量
62408 -
结构体
+关注
关注
1文章
129浏览量
10832
原文标题:同样是结构体,在C和C++中有什么区别
文章出处:【微信号:学益得智能硬件,微信公众号:学益得智能硬件】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论