2013-04-23 34 views
0

在我正在維護的一個程序中,我在其結尾處找到了一個關鍵字實例類。像這樣:我可以在哪裏瞭解C++實例關鍵字?

class SomeClass{ 
public: 
} instance; 

程序是一個DLL,這個「SomeClass」是加載DLL時創建的第一個對象。 instance關鍵字來自哪裏?它是否特定於gcc?我在哪裏可以閱讀更多關於它的內容

+6

這是* not *關鍵字,它是所聲明類的實例的標識符。這相當於編寫'class SomeClass {...}; SomeClass實例;'。 – dmckee 2013-04-23 16:22:21

回答

2

單詞instance不是關鍵字。您正在實例化一個類型爲SomeClass的類對象,名爲instance

這是a list of C++ Keywords我從Google搜索中找到。

4

結構或類定義的語法是這樣的:

class | struct)類標籤] {成員}實例;

我使用[]表示可選項目和斜體表示任意項目列表。

換句話說,你可以定義僅僅是類型本身,是這樣的:

class xxx { /* ... */ }; 

...或者你可以這樣定義只是一個實例:

class { /* ... */ } an_instance; 

...或者你既可以做:

class xxx { /* ... */ } another_instance; 

...或者你可以定義一些情況下,如果你想:

class xxx { /* ... */ } instance1, instance2, instance3; 

雖然後者不是關鍵字 - 它們只是普通變量。誰曾想大多數人來完成同樣的事情可能會寫兩個分別:

class SomeClass { 
    /* ... */ 
}; 

SomeClass instance; 

從最實用的目的,這是一個在問題形式的代名詞。

相關問題