FINAL EDIT: Я худший человекC++ 11 перечислений в заголовочном файле
Я поднял голову и, по-видимому, в Qt-Creator вы должны указать, нужно включить C++ 11 в конфигурации .pro файл. Я сделал это, все работает нормально. Я извиняюсь.
Так ясно, что я ужасен в Гуглинге, или мне не хватает совета, которого я так отчаянно хочу.
Я пытался помещать enum в заголовок, чтобы сделать его доступным для других файлов в моем текущем проекте.
//Drawing.h
enum class Drawing {Line, Square, Triangle};
//action.cpp
#include "Drawing.h"
Drawing analyzeStuff(VertexArray vertices){
Drawing theDrawing; //This is fine.
if(...)
theDrawing = Drawing::Line; //This brings up an error.
//...Other else-ifs using the same thing.
return theDrawing; //This is also fine.
}
EDIT: Важно ли упоминать, что у меня есть второй класс в этом заголовочном файле? Я сомневаюсь, но это действительно единственное изменение между этим кодом и моим собственным.
Что такое сообщение об ошибке? Какой компилятор? – dyp
Пожалуйста, не отправляйте код, который работает и зловеще ссылается на некоторую ошибку, которая не существует. –
@DyP Сообщение об ошибке говорит, что чертеж не является классом или пространством имен. Я использую Qt-Creator, который говорит мне только 64-разрядный GCC x86, который он автоматически получает. Он признает, что это работает только в C++ 11 или gnu ++ 11, но он говорит, что он включен по умолчанию. – Jash