编程八股文——详细介绍C/C++中结构体、类和联合体的区别

C结构体、C++结构体、C++类的区别

C 结构体与 C++ 结构体

  • C 语言中的结构体不能为空,否则会报错
  • C 语言中的结构体只能定义成员变量,C++ 中结构体既可以定义成员变量又可以定义成员函数

C++ 结构体与C++类

  • 对于成员访问权限和继承方式,class 中默认的是 private,而 struct 中则是 public。
  • C++ 中保留 struct 关键字是为了使 C++ 编译器能够兼容 C 语言开发的程序

结构体和联合体区别

  • 结构和联合都是由多个不同的数据类型成员组成
  • 同一时刻, 联合中只存放了一个成员(所有成员共用一块地址空间,内存大小为最大的成员变量), 而结构体的所有成员都存在(不同成员的存放地址不同,内存大小为成员变量之和)。
  • 对联合体不同成员赋值, 将会对其它成员重写, 原来成员的值就不存在了, 而对于结构的不同成员赋值是互不影响的。

最近更新

  1. TCP协议是安全的吗?

    2023-12-19 13:32:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-19 13:32:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-19 13:32:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-19 13:32:02       20 阅读

热门阅读

  1. 第1节 位运算、算法是什么、简单排序

    2023-12-19 13:32:02       39 阅读
  2. 目标检测里面MAP评测指标的详细介绍

    2023-12-19 13:32:02       38 阅读
  3. 前端面试题(计算机网络):POST和PUT请求的区别

    2023-12-19 13:32:02       40 阅读
  4. Wireshark高级网络安全分析

    2023-12-19 13:32:02       67 阅读
  5. 【数组Array】力扣-370 区间加法

    2023-12-19 13:32:02       49 阅读
  6. 2023.12.17力扣每日一题

    2023-12-19 13:32:02       45 阅读
  7. openssl生成https

    2023-12-19 13:32:02       44 阅读
  8. 视觉SLAM中的相机分类及用途

    2023-12-19 13:32:02       40 阅读
  9. 【matlab】MATLAB常用内置函数&示例

    2023-12-19 13:32:02       38 阅读
  10. conda和pip配置国内镜像源

    2023-12-19 13:32:02       42 阅读