我正在一个项目上,我有三个头文件,每个头文件定义一个单独的结构,并带有一些用于访问变量的函数,这是学生结构的一个示例:
#include<string.h>
//using namespace std;
struct student
{
int studentId;
string fname;
string lname;
};
void SetId(student * stu,int id)
{
stu->studentId=id;
}
void SetFirstName(student * stu,string name)
{
stu->fname=name;
}
void SetLastName(student * stu,string name)
{
stu->lname=name;
}
int GetId(student * stu)
{
return stu->studentId;
}
string GetFirstName(student * stu)
{
return stu->fname;
}
string GetLastName(student * stu)
{
return stu->lname;
}
当我编译该文件时,出现两个错误:
1. [错误]未知类型名称'string'
2. [错误]未知类型名称'student'
最佳答案
将string
替换为std::string
。
您已经做了一件好事,并且摆脱了令人讨厌的using namespace std;
。
最后,为什么不让student
类本身的“全局函数”成员呢?然后,您将不需要该student*
指针。 C ++不是C,您知道的。