class 类型的 C++ 变量声明没有命名类型?
C++ Variable declaration of type class does not name a type?
我在声明类型为 class 的变量时遇到问题。
示例代码
class Party{
public:
string partyName;
Leader leader;
Candidate candiate;
nationalcompaignManager nationalManager;
natioanlfinancialManager financialManager;
compaignMananger newcompaignMananger;
};
class Leader: public Person {
public:
int popularity;
int totalcountryVotes;
}
如代码片段所示,有几个变量声明为 class 类型,在此示例中,我演示了变量领导者如何存在 class 领导者;
错误代码示例(都一样)
error: ‘Leader’ does not name a type
Leader leader;
每个变量都有 classes,但为了简单起见,我将与 Leader 一起工作。 Leader在程序范围内明明定义为class,而其类型的变量却不是?我不确定为什么会出现此错误
只需在 Party
上方声明 Leader
即可使其 "visible" 变为 Party
class。
class Leader
{
};
class Party
{
Leader leader;
};
C++ 是一种顺序语言,这意味着它会从上到下开始编译您的代码。所以在你声明一个 class 变量之前,你应该首先在声明之前定义 class 否则 class 不存在(直到它被定义)因此,导致错误.
class Leader
{
}; //The class Leader is now defined.
class Party
{
Leader leader;
};
简而言之,您不能使用尚未创建的东西。
我在声明类型为 class 的变量时遇到问题。
示例代码
class Party{
public:
string partyName;
Leader leader;
Candidate candiate;
nationalcompaignManager nationalManager;
natioanlfinancialManager financialManager;
compaignMananger newcompaignMananger;
};
class Leader: public Person {
public:
int popularity;
int totalcountryVotes;
}
如代码片段所示,有几个变量声明为 class 类型,在此示例中,我演示了变量领导者如何存在 class 领导者;
错误代码示例(都一样)
error: ‘Leader’ does not name a type
Leader leader;
每个变量都有 classes,但为了简单起见,我将与 Leader 一起工作。 Leader在程序范围内明明定义为class,而其类型的变量却不是?我不确定为什么会出现此错误
只需在 Party
上方声明 Leader
即可使其 "visible" 变为 Party
class。
class Leader
{
};
class Party
{
Leader leader;
};
C++ 是一种顺序语言,这意味着它会从上到下开始编译您的代码。所以在你声明一个 class 变量之前,你应该首先在声明之前定义 class 否则 class 不存在(直到它被定义)因此,导致错误.
class Leader
{
}; //The class Leader is now defined.
class Party
{
Leader leader;
};
简而言之,您不能使用尚未创建的东西。