У меня есть заголовочный файл, который в конечном итоге будет включать более одного класса enum.Однако, когда я включаю заголовочный файл в другой файл и пытаюсь использовать класс enum, моя программа не будет компилироваться.Например:
enums.h:
#ifndef ENUMS_H
#define ENUMS_H
enum class TokenType : char
{
IDEN,
STRING,
SEMICO
};
#endif
и main.cpp:
#include <iostream>
#include "enums.h"
int main()
{
char token = TokenType::STRING; //Does not compile!
}
Однако, когда я использую обычный enum, он компилируетсяправильно:
enums.h:
#ifndef ENUMS_H
#define ENUMS_H
enum TokenType : char
{
IDEN,
STRING,
SEMICO
}
#endif
и main.cpp:
#include <iostream>
#include "enums.h"
int main()
{
char token = STRING; //This does compile!
}
Кто-нибудь знает, как это сделать правильно?Я много искал и ничего не нашел.