我已经看到了有关此错误的一些问题,但是我在C++中编写类没有太多经验,因此我实际上不理解答案的含义。我还应该指出,我没有编写这段代码。

我收到标题中指出的错误,并且我相信它来自此头文件,但我不知道该错误意味着什么以及如何解决。

这是文件:

#ifndef _QUICKTIMER_H_
#define _QUICKTIMER_H_

#include <cstdlib>
#include <string>
#include <chrono>

class QuickTimer {
public:
  QuickTimer(const std::string& prefix = "");
  ~QuickTimer();
private:
  std::chrono::high_resolution_clock::time_point mStartTime;
  const std::string mPrefix;
};

#endif

和完整的错误:
error: expected unqualified-id before ‘const’
 QuickTimer(const std::string& prefix) :
            ^

error: expected ‘)’ before ‘const’

error: declaration of ‘~QuickTimer’ as non-member
 ~QuickTimer()
             ^

如果有人可以向我解释这意味着什么以及正在发生什么,我将非常感谢,谢谢!

最佳答案

您的构造函数和析构函数的定义中可能缺少类名前缀。您应该在cpp文件中有类似的内容:

QuickTimer::QuickTimer(const std::string& prefix)
{
}

QuickTimer::~QuickTimer()
{
}

关于c++ - 错误:在 ‘const’之前预期的unqualified-id,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32687372/

10-12 20:43