我得到了一个带有两个变量的结构,char first_name和last_name。如何将first_name和last_name声明为vector<char>
struct employee{
char first_name[50];
char last_name[50];
}
当我使用std :: vector first_name [50]时,它抛出一个错误:期望一个类型说明符。我该如何解决呢
答案 0 :(得分:1)
正如你所写的那样:
struct employee{
std::vector<char> first_name;
std::vector<char> last_name;
};
答案 1 :(得分:1)
如果您想将员工列表作为向量:
struct employee{
std::string first_name;
std::string last_names;
};
std::vector<employee> myvec;
employee e1;
e1.first_name = "tom";
e1.last_name = "joe";
myvec.push_back(e1);
std::cout << myvec[0].first_name << std::endl; // tom
std::cout << myvec[0].last_name << std::endl; // joe
现在,如果你想要一个名字和姓氏的列表作为字符串,在EMPLOYEES结构中,那么:
struct employees{
std::vector<std::string> first_names;
std::vector<std::string> last_name;
};
std::string firstname = "tom";
std::string lastname = "joe";
employees e;
e.first_names.push_back(firstname);
e.last_names.push_back(lastname);
std::cout << e.first_names[0] << std::endl; // tom
std::cout << e.last_names[0] << std::endl; // joe
我认为拥有一个员工结构并创建它们的列表更有意义,但我不知道你打算如何使用它。