【发布时间】:2016-02-01 23:51:30
【问题描述】:
首先,Parameter.h:
#pragma once
#include <string>
class Parameter {
public:
Parameter();
~Parameter();
private:
string constValue;
string varName;
};
还有Parameter.cpp:
#include "Parameter.h"
using namespace std;
Parameter::Parameter() {};
Parameter::~Parameter() {};
我已将这两个文件归结为最简单的内容,以获取似乎正在弹出的错误。在strings 的两个私有声明中,我得到两个错误:
'constValue': unknown override specifier
missing type specifier - int assumed. Note: C++ does not support default-int
我已经看到了几个与这些错误有关的问题,但每个问题都涉及循环引用或缺少引用。由于我已将其简化为绝对需要的内容,因此我看不到任何循环引用或缺少的引用。
有什么想法吗?
【问题讨论】:
-
名字应该是
std::string。 -
在我编写的所有(工作)类中,我从未放入
std::,而是依赖于.cpp 文件中的using namespace std;。为什么这个会有所不同? -
使用声明必须在使用名称之前。
-
@David Parady:不,
.cpp文件中的using namespace std;位于上面的示例中,对头文件没有影响。显然,在您编写的其他“课程”中,您的做法有所不同。 -
TL;DR
override specifier其余的是红鲱鱼。更丰富的错误消息应该是:'constValue' unknown.
标签: c++