我的程序有问题。我在寻找答案,但我找不到解决方案。我创建了struct和class:
struct Data
{
Client* k;
string msg;
};
class Client
{
public:
string name;
int _id;
}
然后我创建了数据表。
Data tab[100];
当我尝试从表格中的某些字段获取名称时,如下所示:
tab[i].k->name;
我收到错误:
C2227 left of "->name" must point to class/struct/union/generic type
C2027 use of undefined type 'Client'
答案 0 :(得分:1)
你有一个&#39 ;;'客户端类声明后丢失。
无论哪种方式,我都会略微修改您的代码(在数据之前的客户端,添加缺失的&#39 ;;')并使其编译并正常运行:
#include <iostream>
using namespace std;
class Client
{
public:
string name;
int _id;
};
struct Data
{
Client* k;
string msg;
};
int main()
{
Data tab[100];
for (int i = 0; i < 100; i++)
{
tab[i].k = new Client();
tab[i].k->name = "name" + to_string(i);
cout << tab[i].k->name << endl;
}
}