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

来自:网络
时间:2021-04-22
阅读:

今天我们来看一下: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 ++结构是用语言内置的,因此可以具有此概念。 

返回顶部
顶部