在我维护的一个程序中,我找到了一个结尾带有关键字 instance 的类。像这样:
class SomeClass{
public:
} instance;
该程序是一个 DLL,而这个“SomeClass”是加载 DLL 时创建的第一个对象。实例关键字从何而来?它是gcc特有的吗?我在哪里可以阅读更多关于它的信息?
结构或类定义的语法是这样的:
( class
| struct
) [类标签]{
成员 }
实例 ;
我使用[
and]
表示可选项目,斜体表示任意项目列表。
换句话说,您可以只定义类型本身,例如:
class xxx { /* ... */ };
...或者您可以只定义一个实例,例如:
class { /* ... */ } an_instance;
...或者您可以同时执行以下操作:
class xxx { /* ... */ } another_instance;
...或者您可以定义多个实例,如果您愿意:
class xxx { /* ... */ } instance1, instance2, instance3;
后者不是关键字——它们只是普通变量。大多数想要完成相同事情的人可能会分别编写两者:
class SomeClass {
/* ... */
};
SomeClass instance;
对于大多数实际目的,这与问题中的形式同义。
这个词instance
不是关键字。您正在实例化一个SomeClass
名为instance
.
这是我从 Google 搜索中找到的 C++ 关键字列表。