在 C++ 中,struct(结构体)是一种用户自定义的数据类型,用于将一组相关的变量(称为成员)组织在一起。C++ 中的 structclass 非常相似,主要区别在于 默认访问权限

下面我会从 定义、初始化、成员访问、与 class 的区别、使用场景 等角度详细介绍。


1. 基本定义与使用

#include <iostream>
using namespace std;

struct Point {
    int x;
    int y;
};

int main() {
    Point p1;       // 声明结构体变量
    p1.x = 10;      // 访问成员
    p1.y = 20;

    cout << "p1: (" << p1.x << ", " << p1.y << ")" << endl;
    return 0;
}

要点:


2. 结构体的初始化

C++ 支持多种结构体初始化方式:

(1) 列表初始化

Point p1 = {1, 2};

(2) C++11 列表初始化(推荐)

cpp
复制编辑
Point p2 {3, 4};

(3) 使用构造函数

C++ 的 struct 可以像 class 一样定义构造函数: