当前位置: 首页 > article >正文

Linux复习-C++

参考博客:

https://blog.csdn.net/qq_45254369/article/details/126023482?ops_request_misc=%257B%2522request%255Fid%2522%253A%252277629891-A0F3-4EFC-B1AC-410093596085%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=77629891-A0F3-4EFC-B1AC-410093596085&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-9-126023482-null-null.nonecase&utm_term=C%E8%AF%AD%E8%A8%80%E5%85%AB%E8%82%A1&spm=1018.2226.3001.4450

1.空类占用字节

空类占用的字节并不为0,因为即使是空类,也会有默认的构造、析构函数,所以占用的空间并不为0

2.浅拷贝与深拷贝

浅拷贝只是进行简单的赋值操作,仅赋值了指针。
深拷贝:在堆区重新申请空间,进行内存的拷贝。
浅拷贝存在的问题是,:数据重复释放。

3.C与C++的区别

C面向过程,C++面向对象。
C++引入了new/delete,取消了C中的malloc/free。
C++中引入了引用的概念。
C++中引入了类的概念。
C++中引入了函数重载的概念。

4.静态链接和动态链接

静态链接是在链接编译时直接将需要的执行代码拷贝到代码调用处。
优点:程序发布的时候不需要依赖库,可以独立运行。
缺点:程序体积偏大,如果静态库更新后,所有可执行文件需要重新链接。
动态链接是在编译时不直接拷贝执行代码,而是通过一系列符号和参数,在程序运行或加载时即将这些信息传递给操作系统。
优点:在于多个程序可以共享一个动态库,节省资源。
缺点:在于运行时加载,可能影响程序的前期执行性能。

5.指针和引用的区别
在这里插入图片描述
6.类和结构体的区别

类    :默认为private,对象的实现体。
结构体:默认为public,数据结构的实现体。

7.define和inline的区别
在这里插入图片描述
8.前置++和后置++区别

前置:先自增或自减,然后再使用。
后置,先试用,然后再自增或自减。
后置++会产生临时变量,会造成一次构造函数和析构函数的额外开销。前置++不会产生临时变量。

9、友元

友元:让一个函数或者类,访问另一个类的私有成员(打破封装)
三种实现:
全局函数做友元
类做友元(友元类)
成员函数做友元

http://www.kler.cn/news/367983.html

相关文章:

  • 使用 Docker 管理完整项目:Java、Vue、Redis 和 Nginx 的一站式部署
  • python如何基于numpy pandas完成复杂的数据分析操作?
  • 破解API加密逆向接口分析,看这篇就够了
  • Unity插件-Intense TPS 讲解
  • 逻辑回归与神经网络
  • 【动态规划】力扣509. 斐波那契数
  • vue3组件通信--props
  • 虚拟现实新纪元:VR/AR技术将如何改变娱乐与教育
  • 桥接模式,外界与主机通,与虚拟机不通
  • 提示词高级阶段学习day3.3如何写好结构化 Prompt ?
  • AndroidStudio Koala更改jdk版本 2024-1-2
  • 关于我的数据库——MySQL——第二篇
  • Qt/C++路径轨迹回放/回放每个点信号/回放结束信号/拿到移动的坐标点经纬度
  • JavaEE初阶---多线程(三)---内存可见性/单例模式/wait,notify的使用解决线程饿死问题
  • ubuntu虚拟机网络配置
  • C++STL之stack
  • 二十、行为型(访问者模式)
  • Java学习Day53:铲除紫云山金丹原料厂厂长(手机快速登录、权限控制)
  • 浅谈AI大模型的数据特点和应用问题
  • JavaEE初阶---多线程(五)---定时器/线程池介绍
  • 如何在国内安装使用Python,国内镜像站点加速库的安装
  • 用哪种建站程序做谷歌SEO更容易?
  • P6458 [COCI2006-2007#5] LIGA
  • 算法汇总整理篇——贪心与动态规划学习及框架思考
  • ReactNative 启动应用(2)
  • 【Linux操作系统】Linux配置OpenSSH服务器步骤记录