错误:"在{'之前预期的不合格ID令牌"在创建模板类时

时间:2017-07-21 13:06:13

标签: c++

主类

#if defined(CONFIG_SOCKET)
template<class T>
class cUI_ScrData :public GFX_Socket
#elif defined(CONFIG_QUEUE)
template<class T>
class cUI_ScrData :public cUI_MQueueTx
#else
#endif
{

bool data_changed;

public:
T data;
UINT32 id;
void set_data(T& new_data)
{
    // Some Code
}
};

套接字类

class GFX_Socket
{
GFX_SocketImpl *gfxSocketImplObj;
public:
GFXSOCKETVSPROJ_API void Client_start();
GFXSOCKETVSPROJ_API void Client_read();
GFX_Socket();
~GFX_Socket();
void ServerWrite(void *msgbuff, int size);
void Client_start();
void Client_read();
#endif
static bool bClientStarted;
};

队列类

class cUI_MQueueTx
{
private:
mqd_t queue;
char ucaQueueName[QUEUE_NAME_STR_MAX_LEN];
public:
cUI_MQueueTx();
~cUI_MQueueTx();
void UI_Q_create();
};

在创建从两个不同类派生的模板类时获取此错误。编译器指出&#34; {&#34;在主类中的#endif之后。

1 个答案:

答案 0 :(得分:0)

如果预处理器转到#else,您的代码将无效。