我尝试使用枚举来表示交通模拟中的街道和方向。我遇到了一个试图包含在我的Vehicle头文件中的问题,将枚举放入构造函数并将其放入Vehicle构造函数中。
我在尝试编译Vehicle.h时遇到错误 - 使用enum' street / direction'没有事先声明。 - '之前的两个预期标识符,'令牌,我声明了车辆构造函数
这是我到目前为止所拥有的。
//Street.h
#ifndef STREET_H
#define STREET_H
enum street
{
Main = 1,
Church,
};
#endif
//Direction.h
#ifndef DIRECTION_H
#define DIRECTION_H
enum direction
{
E = 1,
W,
N,
};
#endif
//Vehicle.h
#ifndef VEHICLE_H
#define VEHICLE_H
#include "Street.h"
#include "Direction.h"
class Vehicle
{
private:
int vehicleNumber;
int arrivalTime;
int departureTime;
enum street;
enum direction;
public:
Vehicle(int, enum, enum, int);
};
#endif
答案 0 :(得分:3)
Vehicle(int, enum, enum, int);
这是不正确的,你应该使用你想要的枚举类型的名称(在这种情况下是street
和direction
而不是关键字enum
。
这些成员变量也是如此(感谢@Unda注意)。