1

このエラーに関するいくつかの質問を見たことがありますが、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()
             ^

誰かが私にそれが何を意味し、何が起こっているのかを説明できれば、本当に感謝しています、ありがとう!

4

1 に答える 1

1

コンストラクタとデストラクタの定義にクラス名の接頭辞が欠落している可能性があります。cpp ファイルに次のようなものが必要です。

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

QuickTimer::~QuickTimer()
{
}
于 2015-09-21T04:52:25.823 に答える