C++ 中的结构体的成员的数据类型可以同时包含基本数据类型、指针、数组、其他结构体,或者类对象等。这使得结构体非常灵活,可以用来表示复杂的数据结构。以下是一个包含多种类型成员的结构体的示例:
struct ComplexStruct { // 基本数据类型 int integerMember; double doubleMember; char charArrayMember[10]; // 指针 int* pointerMember; // 数组 float floatArrayMember[5]; // 其他结构体 struct NestedStruct { int nestedInteger; } nestedStructMember; // 类对象 class ExampleClass { public: ExampleClass() { // 构造函数 } } classMember; }; int main() { // 创建 ComplexStruct 结构体对象 ComplexStruct myStruct; // 对结构体成员赋值 myStruct.integerMember = 42; myStruct.doubleMember = 3.14; strcpy(myStruct.charArrayMember, "Hello"); myStruct.pointerMember = new int; *(myStruct.pointerMember) = 100; myStruct.floatArrayMember[0] = 1.1; myStruct.nestedStructMember.nestedInteger = 123; // 对类对象成员调用构造函数 ComplexStruct::ExampleClass myClassObject; // 将类对象赋给结构体成员 myStruct.classMember = myClassObject; // 在这里进行其他操作 // 注意:需要手动释放指针成员的内存 delete myStruct.pointerMember; return 0; }
这个例子中展示了一个结构体 ComplexStruct
,其成员包括基本数据类型、指针、数组、其他结构体、和类对象等。