【发布时间】:2012-07-05 03:22:36
【问题描述】:
我有一个基于 MFC 的旧 C++ 项目,我正在尝试在 Linux (Centos 6.2) 上的 eclipse 中使用 g++ 进行编译。 我从头文件中收到以下错误:
RawData.h:54: error: expected template-name before ‘<’ token
RawData.h:54: error: expected ‘{’ before ‘<’ token
RawData.h:54: error: expected unqualified-id before ‘<’ token
这是头文件中出现问题的部分(从第 54 行开始):
class CRawDayData: public CArray<CRawQHData*,CRawQHData*>
{
public:
CRawDayData();
virtual ~CRawDayData();
public:
tm m_tmDate;
};
我认为这个问题与 CArray 有关,因为我在 Linux 上并且没有使用 MFC 的 afx 东西。有什么想法吗?
【问题讨论】:
-
编译器根本不知道
CArray是什么,因此会出现错误消息。如果它是一个“基于 MFC”的项目,正如您自己所说的,那么您将需要 Linux 上的 MFC。CArray是 MFC 的一部分。那么,你打算怎么做呢?将 MFC 移植到 Linux? -
是的,我正在将 Windows 程序移植到 Linux。我只需要与 CArray 等效的 Linux,以及头文件的正确语法。倾向于 STL std::vector。