gpt4 book ai didi

c++ - 了解嵌套结构

转载 作者:行者123 更新时间:2023-11-30 01:51:55 25 4
gpt4 key购买 nike

我目前正在开发一个需要嵌套结构的程序。虽然,我不确定我是否理解它。如果有人可以的话,我希望得到你的帮助。第一周学习 C++,所以不要难为我 :P

我应该创建一个包含两个字符串成员的 Person 结构,first 和 last。创建一个地址结构,其中包含四个字符串成员:街道、城市、州和邮政编码。并创建一个嵌套结构 Employee,它由三个成员组成。个人成员(member)named name,一个名为 homeAddress 的 Address 成员和一个名为 eid 的 int 成员。

我认为我已经正确地完成了大部分工作,但由于某种原因,我的地址 homeAddress 下不允许使用不完整的类型。另外,当它说创建嵌套结构“Employee”时,是否意味着我必须在某处声明 Employee?

这是我目前所知道的,在此先感谢。

#include <iostream>
#include <string>
#include <fstream>

using namespace std;

struct Person {
string first;
string last;
};

struct Address {
string street;
string city;
string state;
string zipcode;

Person name;
Address homeAddress;
int eid;
};

最佳答案

您的代码几乎完成了。应该是:

struct Person {
string first;
string last;
};

struct Address {
string street;
string city;
string state;
string zipcode;
};

struct Employee {
Person name;
Address homeAddress;
int eid;
};

这里的用词不当是嵌套也可以表示可见性或范围。因此,如果您想在 Employee 中定义结构 AddressPerson,它将如下所示:

struct Employee {
struct Address {
//..
};
struct Employee {
//..
};
Person name;
Address homeAddress;
int eid;
};

这样,您就可以使 PersonAddress 的作用域只属于 Employee 的作用域。

关于c++ - 了解嵌套结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25457275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com