浅谈C结构和C++结构之间的区别

时间:2022-01-28 08:31:03

今天我们来看一下:C结构C++结构之间,到底有什么不一样地方!

在C++中,struct和class完全相同,除了struct默认为公共可见性和class默认为私有可见性。 

C和C ++结构之间的一些重要区别:

结构内部的成员函数:C中的结构不能在结构内部具有成员函数,但是C ++中的结构可以与数据成员一起具有成员函数。

C语言

浅谈C结构和C++结构之间的区别

这将在C中产生一个错误,但在C ++中不会产生任何错误。 

浅谈C结构和C++结构之间的区别

输出:num = 9

直接初始化:我们无法在C中直接初始化结构数据成员,但可以在C ++中完成。 

浅谈C结构和C++结构之间的区别

输出:7

使用struct关键字:在C语言中,我们需要使用struct来声明一个struct变量。在C ++中,没有必要使用struct。例如,让Record有一个结构。在C语言中,我们必须对记录变量使用“结构记录”。在C ++中,我们不需要使用struct,而仅使用"Record"才可以。

静态成员: C结构不能具有静态成员,但C++允许使用。

浅谈C结构和C++结构之间的区别

这将在C中产生一个错误,但在C ++中不会产生任何错误。 

在结构中创建构造函数:C中的结构不能在结构内部具有构造函数,但是C ++中的结构可以具有构造函数创建。

浅谈C结构和C++结构之间的区别

输出:2个

sizeof运算符:此运算符将为C中的空结构生成0,而为C ++中的空结构生成1。 

浅谈C结构和C++结构之间的区别

在C中的输出: 0

在C ++中的输出: 1个

数据隐藏: C结构不允许数据隐藏的概念,但在C ++中是允许的,因为C ++是一种面向对象的语言,而C语言则不是。

访问修饰符: C结构没有访问修饰符,因为语言不支持这些修饰符。由于C ++结构是用语言内置的,因此可以具有此概念。 

到此这篇关于浅谈C结构和C++结构之间的区别的文章就介绍到这了,更多相关C结构和C++结构区别内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_42366672/article/details/115800035