C++|19.C++类与结构体对比

类和结构体

类和结构体本质上并没有太大区别。
但两者在默认上有所区别。
类默认成员变量是私有的,而结构体默认成员变量是公有的。

在这里插入图片描述
也就是说,对于一个类来说,会默认使用private去保护其内部成员变量使得无法直接访问到其内部的变量。在这里插入图片描述
同时从诞生来看,C是没有类的概念的,但有结构体的概念。
这与C语言和C++面向对象应该也有关系:C语言是面向过程的,而C++是面向对象的。
也就是说C++是有面向对象的需求,需要建设一个类的概念去符合C++面向对象的想法。
而C语言已经有了结构体,两者是相似的,可能可以考虑将结构体进行删除。
但一般设计上,会考虑到向后兼容(比如说我原本用C写了一堆代码,但C++不兼容C,也就是说这堆代码直接没用了)。所以在C++中,结构体也被保留下来了。但结构体应该没有满足C++对面向对象特性的需求。
(可以用#define struct class来将旧代码中的struct替换成class)

参考

【19】【Cherno C++】【中字】C++类与结构体对比

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/334264.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

外汇天眼:台北妇女轻信假投资诈骗话术,小赚1万却惨赔1500万

当今社会物价急速上涨,许多民众为了避免资产因通膨缩水,纷纷开始寻找各种能增加收入的渠道,因此投资理财日渐受到重视。 然而,诈骗集团也注意到这趋势,并且推出虚假的投资平台或方案,以各种话术行骗。 不久…

人逢三六九,运势低迷路难走

很多人都希望自己各方面的运势都能够朝着好的方向旺盛发展,我们的运势将会如何发展跟我们的出生时间是离不开关系的。我们的祖先为了后人着想,不犯他们犯过的错误,少走一些弯路,总结了多年来的生活经验,创造出了一句句…

在视频号上开通店铺怎么样?全新带货平台,普通人最后的电商机会

我是王路飞。 好消息:现在视频号上也可以开店、带货、做电商了。 坏消息:有一定的门槛(尤其是资金方面)。 视频号小店代表的是“全村的希望”(腾讯马老板在22年底内部员工大会上的发言内容),…

Vue使用printJS导出网页为pdf、printJS导出pdf

先放几个参考链接 感谢! Vue使用PrintJS实现页面打印功能_vue print.js 设置打印pdf的大小-CSDN博客 前台导出pdf经验汇总 (html2canvas.js和浏览器自带的打印功能-print.js)以及后台一些导出pdf的方法_iqc后台管理系统怎么做到导出pdf-CSD…

互联网外包公司干了2个月,技术退步明显了.......

先说一下自己的情况,本科毕业,18年通过校招进入南京某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能…

Aging:浙大学者研究发现,多吃这类抗氧化饮食,延缓衰老

撰文 | 宋文法 衰老,是一个复杂、多阶段、渐进的过程,发生在生命的整个过程。随着时间的流逝,人体的器官、肌肉会逐渐衰老,一些疾病也伴随着年龄的增长而发生,包括癌症、糖尿病、心血管疾病等。 衰老过程是由体内自由基…

【node link】Node命令中的node link命令的使用,还有CLI全局命令的使用,开发命令行工具必不可少的部分

😁 作者简介:一名大四的学生,致力学习前端开发技术 ⭐️个人主页:夜宵饽饽的主页 ❔ 系列专栏:NodeJs 👐学习格言:成功不是终点,失败也并非末日,最重要的是继续前进的勇气…

synchronized和lock的区别

synchronized和lock的区别 1)synchronized是一个关键字,lock是一个java类; 2)synchronized无法判断获取锁的状态,lock可以判断是否获取到了锁; 3)synchronized会自动释放锁,lock必须…

ORPC-824,对标可替代ACPL-824/PC824等

提供隔离反馈 逻辑电路之间的接口 电平转换 DC和AC输入 SMPS中的调节反馈电路 消除接地环路 特征 电流传输比 ( CTR : 最低 20% 在 IF 1mA, VCE 5V ) 宽工作温度范围 -55~110C 高输入输出隔离电压 ( Viso 5&am…

LowB三人组(冒泡排序,插入排序,选择排序)(数据结构课设篇1,python版)(排序综合)

本篇博客主要详细讲解一下LowB三人组排序,为什么叫LowB三人组呢?因为他们的时间复杂度都为O(n^2)。下篇博客NB三人组(堆排序,归并排序,快速排序)(数据结构课设篇2&#x…

大模型学习

大模型的参数量和显存占用估算 现在业界的大语言模型都是基于transformer模型的,模型结构主要有两大类:encoder-decoder(代表模型是T5)和decoder-only,具体的,decoder-only结构又可以分为Causal LM&#x…

C++qt-信号-信号槽

1、概念 信号和槽是两种函数,这是Qt在C基础上新增的特性,类似于其他技术中的回调的概念。 信号和槽通过程序员提前设定的“约定”,可以实现对象之间的通信,有两个先决的条件: 通信的对象必须都是从QObject类中派生出来…