QT5 с использованием enum typedef в нескольких файлах c ++-приводит к ошибке компиляции », не объявленной в этом объеме C++

Программы на C++. Форум разработчиков
Anonymous
QT5 с использованием enum typedef в нескольких файлах c ++-приводит к ошибке компиляции », не объявленной в этом объеме

Сообщение Anonymous »

В заголовке заголовка1.h я создаю Typedef enum

Код: Выделить всё

header1.h
#ifndef HEADER1_H
#define HEADER1_H

typedef enum
{
TEST1,
TEST2
} TestType_t;

#endif
во втором заголовке HeaderFile.

Код: Выделить всё

headerWorking.h
#ifndef HEADER_WORKING_H
#define HEADER_WORKING_H

#include 
#include 

class ClassWorking: public QObject
{
Q_OBJECT
QML_ELEMENT
public:
#include "header1.h"
Q_ENUM(TestType_t)
.
.
.
#endif
};
В третьем Headerfile headernotworking.h я создаю другой класс и испытывал впечатление, что я мог бы сделать Testtype_t доступным с тем же методом. Тип необходим для определения функции foo
headerNotWorking.h
#ifndef HEADER_NOT_WORKING_H
#define HEADER_NOT_WORKING_H

#include
#include

class ClassNotWorking: public QObject
{
Q_OBJECT
QML_ELEMENT
public:
#include "header1.h"
Q_ENUM(TestType_t)
Q_INVOKABLE void foo(TestType_t testType);
.
.
.
};
#endif
< /code>
Это приводит к ошибке ошибки компиляции: testtype_t 'не был объявлен в этой области < /code>
Что мне нужно сделать, чтобы получить доступ к переводам Typedef В обоих классах?

Подробнее здесь: https://stackoverflow.com/questions/794 ... rror-not-d

Вернуться в «C++»