在C++中,如果你創建一個結構或類這樣結構和類在C++
struct foo {
}
必須使用結構或類限定符在C做創造一個又一個,如果不是這是爲什麼?什麼時候在C++中使用它是合適的?
示例
struct foo a;
由於:-)
在C++中,如果你創建一個結構或類這樣結構和類在C++
struct foo {
}
必須使用結構或類限定符在C做創造一個又一個,如果不是這是爲什麼?什麼時候在C++中使用它是合適的?
示例
struct foo a;
由於:-)
的struct
不是必需的。在C++中,struct
和class
之間的唯一區別是,在一個struct
,成員public
默認,而在class
,他們在默認情況下是private
。
否,而用C實例不需要struct
關鍵字++。順便說一下,結構定義應該以;
在C中,您可以通過使用typedef來避免它。在C++中,類型是自動創建的,因此不需要明確說明它。
的C
語法,使其類似於:
typedef struct {
....
} foo;
然後你可以使用它說foo x;
你可以,但你不必。最好不要,如果你不打算將你的代碼與純C混合,那麼它就是正確的C++風格。原因是C++的設計者認爲C的標籤概念是不必要的複雜。我傾向於同意。
結構在C++中表現爲公共類並創建新類型,因此使用struct關鍵字來創建變量純粹是可選的。 –
@rubixibuc - 增加了'C++'標記,因爲這是適當的。 – Mahesh