C++结构体

在C++中,类和结构体都是用于创建类的实例的蓝图。结构体用于轻量级对象,例如Rectangle(矩形)、color(颜色)、Point(点)等。

与类不同,C++中的结构体是值类型而不是引用类型。如果有数据在创建结构体后不打算修改,那么使用结构体是很有用的。

C++结构体是一组不同数据类型的集合。它类似于包含不同类型数据的类。

结构体的语法

struct 结构体名
{ 
// 成员声明。 
} 

在上述声明中,通过在struct关键字之前加上标识符(结构体名称)来声明结构体。在大括号内部,我们可以声明不同类型的成员变量。考虑以下情况:

struct Student 

{ 

char name[20]; 

int id; 

int age;

 }

在上述情况下,Student是一个结构体,包含三个变量name、id和age。当结构体被声明时,不分配内存。当创建结构体的变量时,内存会被分配。让我们理解这个情况。

如何创建结构体的实例?

结构体变量可以定义为:

Student s;

在这里,s是类型为Student的结构体变量。当创建结构体变量时,内存将被分配。Student结构体包含一个char变量和两个int变量。因此,一个char变量的内存为1字节,两个int变量的内存为2 * 4 = 8字节。变量s占用的总内存为9字节。

如何访问结构体的变量:

可以通过使用结构体的实例后跟点(.)运算符和结构体的字段来访问结构体的变量。

例如:

s.id = 4; 

在上述语句中,我们通过使用点(.)运算符访问结构体Student的id字段,并将值4赋给id字段。

C++结构体示例 

让我们看一个简单的结构体Rectangle的示例,它有两个数据成员width和height。

#include <iostream>
using namespace std;
struct Rectangle
{
int width, height;

};
int main(void) {
struct Rectangle rec;
rec.width = 8;
rec.height = 5;
cout << "矩形的面积是:" << (rec.width * rec.height) << endl;
return 0;
}

输出:

矩形的面积是:40 

C++结构体示例:使用构造函数和方法

让我们看另一个结构体的示例,其中我们使用构造函数初始化数据,并使用方法计算矩形的面积。

#include <iostream>
using namespace std;
struct Rectangle 
{ 
  int width, height; 
  Rectangle(int w, int h) 
  { 
    width = w; 
    height = h;
  } 
  void areaOfRectangle() 
  { 
    cout << "矩形的面积是:" << (width * height); 
  }
}; 
int main(void) 
{ 
  struct Rectangle rec = Rectangle(4, 6); rec.areaOfRectangle();
  return 0;
} 

输出:

矩形的面积是:24 

结构体 vs 类

结构体
如果没有明确声明访问修饰符,那么默认访问修饰符为public。如果没有明确声明访问修饰符,那么默认访问修饰符为private。 结构体的语法:
struct 结构体名 { // 结构体的内容。 }类的语法:class 类名 { // 类的内容。 }
结构体的实例称为"结构体变量"。类的实例称为"类的对象"。

标签: C++语言, C++语言教程, C++语言技术, C++语言学习, C++语言学习教程, C++语言下载, C++语言开发, C++语言入门教程, C++语言进阶教程, C++语言高级教程, C++语言面试题, C++语言笔试题, C++语言编程思想