c++ 在写文件的时候编译有错误怎么解决 求大神

guanli.h:的里面是

#pragma once
#pragma once
#include

typedef stur dar;
struct stur
{

int numb;
int chian;
char name[10];

stur();
~stur();

};

class mu
{

public:

myclass* hao;
mu() {
    hao = NULL;

}
~mu();

public:

void print();

void list1(dar d4);
void dele();
void browse();
int rui();
void sort1();
void ecount();
void add();

};

class myclass
{
public:
dar di;
myclass *head;

myclass();
~myclass();
int menu();

};
class mu
{

public:

myclass* hao;
mu() {
    hao = NULL;

}
~mu();

public:

void print();

void list1(dar d4);
void dele();
void browse();
int rui();
void sort1();
void ecount();
void add();

};

class manager
{

public:

mu d4;
mu d5;

int menu();
int hei1();

};
guanli.cpp:里面是

#include "guanli.h"

#include "stdafx.h"

#include
using namespace std;

myclass::myclass()
{
}

myclass::~myclass()
{
}
int manager::hei1()
{
int u;
int r;
int h;
cout << "请输入1为打印\n请输入2问添加数据\n请输入3删除数据\n请输入4浏览数据\n请输入5排序\n请输入6链表中的数字个数\n";
cin >> h;
switch (h)
{
case 1:
printf("链表【1】的数据有\n");
d4.print();
printf("链表【2】的数据有\n");
d5.print();
break;
case 2:
menu();
break;
case 3:
cout << "请输入【1】删除链表【1】的数据请;输入【2】删除【2】的数据" << endl;
cin >> u;
if (u == 1)
{
d4.dele();
}
if (u == 2)
{
d5.dele();
}

    break;
case 5:
    cout << "链表【1】的排序是\n";
    d4.sort1();
    cout << "链表【2】的排序是\n";
    d5.sort1();
    break;
case 6:
    cout << "链表【1】的个数是\n";
    d4.ecount();
    cout << "链表【2】的个数是\n";
    d5.ecount();
    break;
case 0:
    return 0;

}
return h;

}

错误有:“.dele”的左边必须有类/结构/联合
“.ecount”的左边必须有类/结构/联合
“.print”的左边必须有类/结构/联合
“.sort1”的左边必须有类/结构/联合
“di”: 未知重写说明符 类文件分类
“hao”: 未声明的标识符 类文件分类
“manager::d4”使用未定义的 class“mu”

“manager::d5”使用未定义的 class“mu”
“mu”:“class”类型重定义
“stur”: 重定义
意外的标记位于“;”之前

缺少类型说明符 - 假定为 int
错误:严重性 代码 说明 项目 文件 行
错误:标识符“dar”

: 缺少“;”(在“*”的前面)

怎么解决这个问题 应该怎么改

c++

1个回答

typedef stur dar;
这个要放在stur定义后面

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问