G ++“没有命名类型”

Posted

技术标签:

【中文标题】G ++“没有命名类型”【英文标题】:G++ "does not name a type" 【发布时间】:2012-04-19 05:44:17 【问题描述】:
struct MyStruct 
  int x;
;

MyStruct theVar;

theVar.x = 10;

int main() 
  return 0;

为什么编译器会给我错误:

错误:“theVar”没有命名类型

【问题讨论】:

【参考方案1】:

您只能在main 之外的全局范围内创建变量并对其进行初始化。您不能像这样在全局范围内分配变量。

你有两个选择:

在创建时初始化它:

MyStruct theVar = 10;

或者

分配给main:

theVar.x = 10;

请注意,第一种方法更好,因为它只有一个步骤,Initialization,第二种方法有两个步骤InitializationAssignment

【讨论】:

【参考方案2】:

你不能在函数之外做这样的赋值。将其移入 main 中,或将其设为初始化:

MyStruct theVar = 10;

【讨论】:

以上是关于G ++“没有命名类型”的主要内容,如果未能解决你的问题,请参考以下文章

对象没有命名类型错误

错误:“ostream”没有命名类型

对象之前的预期')'。类没有命名类型[重复]

VCOS 没有命名类型

‘cout’ 没有命名类型

c ++结构没有命名类型