Это хорошо известная проблема, эта чертова ошибка
ожидаемое имя класса до '{' токена
Что ж, несмотря на свою усердную работу и поиск в Google, я не смог решить эту ошибку.Сожалею.Это мой последний берег.
В ui.cpp моего проекта я делаю:
#include "wfqueue_proxy_factory.hpp"
ОК, это вызывает глупую ошибку в моем компиляторе:
В файле, включенном из wfqueue_proxy_factory.hpp: 29, из ui.cpp: 28: wfqueue_manager_proxy.hpp: 42: ошибка: ожидаемое имя класса до '{' токена
Существует три классав моем проекте: Первый
// wfqueue_proxy_factory.hpp
#ifndef _WFQUEUE_PROXY_FACTORY_HPP
#define _WFQUEUE_PROXY_FACTORY_HPP
#include "wfqueue_manager_proxy.hpp"
// ...
class WFQueueProxyFactory {
//...
};
#endif
Второй
// wfqueue_manager_proxy.hpp
#ifndef _WFQUEUE_MANAGER_PROXY_HPP
#define _WFQUEUE_MANAGER_PROXY_HPP
#include "workflow.hpp"
#include "wfqueue.hpp"
// ...
class WFQueueManagerProxy : public WFQueue { // This is the problem (line 42)
//...
};
#endif
Третий
// wfqueue.hpp
#ifndef _WFQUEUE_HPP
#define _WFQUEUE_HPP
#include "workflow.hpp"
class WFQueue {
// ...
};
#endif
ПОЖАЛУЙСТА, ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ, что я использую;после каждого класса я проверял КАЖДЫЙ заголовок в своем проекте в поисках этой проблемы и не нашел ни одного класса, за которым не следовал бы;после закрывающей скобки.Это действительно для workflow.hpp, который является простым классом (не производным от какого-либо класса, просто классом).
WFQueue - это своего рода интерфейс, если я использую этот шаблон с другими классами, и они работают.WFQueue содержит некоторые виртуальные чистые методы ... проблема не должна быть здесь в любом случае .... Я предполагаю, что это потому, что я использую другой класс "interface" с другими классами, и они работают нормально.
Эта ошибка исчезает, если я делаюэто:
// wfqueue_manager_proxy.hpp
#ifndef _WFQUEUE_MANAGER_PROXY_HPP
#define _WFQUEUE_MANAGER_PROXY_HPP
#include "workflow.hpp"
#include "wfqueue.hpp"
// ...
class WFQueueManagerProxy {
//...
};
#endif
Не знаю, как решить эту проблему ... пожалуйста, помогите мне.Спасибо