我最近遇到了这个问题。我发现很多人都在问这个问题—— here, for example ——但没有具体的答案。
这是从该链接中提取的示例代码:
class AFX_BASE_APPLICATION_APP_CLASS CFileExtension
{
public:
CFileExtension ();
virtual ~CFileExtension ();
};
这产生的错误是:
c:\FileExtension.h(14) : error C2470: 'CFileExtension' : 看起来像函数定义,但没有形参列表;跳过明显的 body
最佳答案
您几乎肯定错过了定义 AFX_BASE_APPLICATION_APP_CLASS
的标题。在这种情况下,它会原封不动地通过,VC++ 会假设 CFileExtension
是一个返回 class AFX_BASE_APPLICATION_APP_CLASS
的函数。
而且,既然它认为它是一个函数,它也认为它需要括号。
您只需要找到 AFX_BASE_APPLICATION_APP_CLASS
的定义位置和 #include
该文件。
关于c++ - 类声明的编译错误 "looks like a function definition"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/684715/