在我正在维护的程序中,我发现了一个带有关键字实例的类。像这样:
class SomeClass{
public:
} instance;
该程序是一个DLL,这个“SomeClass”是加载DLL时创建的第一个对象。 instance关键字来自哪里?它是否特定于gcc?我在哪里可以阅读更多相关信息?
答案 0 :(得分:5)
结构或类定义的语法如下:
(class
| struct
)[类标记] {
成员 }
实例 {{1} }
我正在使用;
和[
来表示可选项和斜体来表示任意项目列表。
换句话说,您可以只定义类型本身,例如:
]
...或者您只能定义一个实例:
class xxx { /* ... */ };
......或者你可以同时做到这两点:
class { /* ... */ } an_instance;
...或者您可以根据需要定义多个实例:
class xxx { /* ... */ } another_instance;
后者不是关键词 - 它们只是正常的变量。大多数想要完成同样事情的人可能会分别写下两个:
class xxx { /* ... */ } instance1, instance2, instance3;
对于大多数实际用途,这与问题中的表格同义。
答案 1 :(得分:3)
单词instance
不是关键字。您正在实例化一个名为SomeClass
的{{1}}类型的类对象。
以下是我在Google搜索中找到的a list of C++ Keywords。