首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C/C+编程笔记:C语言结构和C+结构之间的区别,又学到了吗?

今天我们来看看:C语言结构和C++结构之间的区别

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

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

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

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

C

C ++

输出:7

使用struct关键字:在C语言中,我们需要使用struct来声明一个struct变量。在C ++中,没有必要使用struct。

例如,让Record有一个结构。在C语言中,必须对Record变量使用“ struct Record”。

在C ++中,我们不需要使用struct,而仅使用'Record'可以。

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

C

C ++

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

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

C

C ++

输出:2

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

在C中的输出:0

用C ++输出:1个

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

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

希望对大家有帮助~

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201219A0GR9F00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券