C++:this declaration has no storage class or type specifier

我在TRITON框架上进行修改时新增一个类

img


在另一个头文件中调用时

img


出现以下报错

img

想问问是什么原因

以下内容部分参考ChatGPT模型:


根据报错信息,该问题出现在头文件paf_wrap.h的第14行,即class PafWrap的声明上。错误提示为“declaration has no storage class or type specifier”,即声明缺少存储类或类型说明符。

这可能是因为在声明时缺少了类的关键字class,或者是由于某些宏定义或其它原因导致编译器无法解析该声明。建议检查头文件中相关的宏定义和类型声明,以确保代码正确。

以下是一个简单的示例,演示了缺少类关键字class会导致类声明错误的情况:

// 错误示例
MyClass {
public:
  void foo();
};

// 正确示例
class MyClass {
public:
  void foo();
};

如果我的建议对您有帮助、请点击采纳、祝您生活愉快

  • 这篇博客: C++ this declaration has no storage class or type specifier中的 在头文件中定义静态变量 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • static T var=init_var;

    ​ 等效于在每个引用该头文件的源文件中,定义一个类型为T的变量var。每个文件中的var归属于本源文件,各文件中互不相同。