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

2023-12-17 15:33:22

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

C 结构体与 C++ 结构体

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

C++ 结构体与C++类

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

结构体和联合体区别

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

文章来源:https://blog.csdn.net/qq_44814825/article/details/135044534
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。