📜  C++结构体(1)

📅  最后修改于: 2023-12-03 15:14:04.856000             🧑  作者: Mango

C++结构体

在C++中,结构体(struct)是一种用户自定义的数据类型,它是由不同类型的数据成员组成的。结构体可以用来描述一个对象或一组相关的对象。

定义结构体

定义结构体需要使用关键字struct,格式如下:

struct StructName {
    DataType member1;
    DataType member2;
    // ...
};

其中StructName是结构体的名称,DataType是数据成员的类型。例如,定义一个描述复数的结构体:

struct Complex {
    double real;
    double imag;
};
初始化结构体

可以使用以下两种方式对结构体进行初始化:

1. 按位置赋值

按位置赋值是指按序号依次对结构体成员进行赋值,例如:

Complex c = {1.0, 2.0};
2. 按名称赋值

按名称赋值是指按成员名对结构体成员进行赋值,例如:

Complex c = {.real = 1.0, .imag = 2.0};
访问结构体成员

可以使用.运算符来访问结构体成员,例如:

Complex c = {1.0, 2.0};
std::cout << "Real part: " << c.real << std::endl;
std::cout << "Imaginary part: " << c.imag << std::endl;
结构体作为函数参数

可以将结构体作为函数的参数传递,同样可以按位置或按名称传递。例如,定义一个函数计算两个复数的和:

Complex add(const Complex& c1, const Complex& c2) {
    Complex result;
    result.real = c1.real + c2.real;
    result.imag = c1.imag + c2.imag;
    return result;
}
结构体作为数组元素

可以使用结构体作为数组的元素,例如:

Complex arr[3] = {{1.0, 2.0}, {2.0, 3.0}, {3.0, 4.0}};
总结
  • 结构体是一种用户自定义的数据类型,它由不同类型的数据成员组成。
  • 可以使用按位置或按名称赋值的方式初始化结构体。
  • 可以使用.运算符来访问结构体成员。
  • 可以将结构体作为函数的参数传递,也可以使用结构体作为数组的元素。