编译代码期间"Does not name a type"编译错误

Compilation error "Does not name a type" during compilation of code

本文关键字:编译 type 错误 name Does 代码 not      更新时间:2023-10-16

标题1:fml32.h

#ifndef TMENV_H
#include <tmenv.h>
#endif
_TMIFML32 extern        char    *Femsgs32[];

标题2:tmenv.h

#ifndef TMENV_H
#define TMENV_H 1
#define _TMIFML32
#endif

我正试图编译一个包含"fml32.h"的.cpp文件。它从fml32.h中抛出一个错误:

error: '_TMIFML32' does not name a type

TMENV_H未在任何位置定义。尝试从标头2中注释#ifndef TMENV_H及其endif,因为我怀疑控件未到达#define _TMIFML32。但仍然是同样的错误。有人能帮忙吗?我真的很感激。

如果您的头名在本地目录中,您可能应该尝试将其包含在"("localheader.h")中。?(当然,这应该是一个评论)。


BTW,根据cpprreference:

  • 任何位置带有双下划线的标识符都是保留的
  • 以下划线和大写字母开头的标识符保留信件
  • 以下划线开头的标识符在全局命名空间中保留