如果使用class關(guān)鍵字來定義類,那么定義在第一個(gè)訪問標(biāo)號(hào)前的任何成員都隱式指定為private;如果使用struct關(guān)鍵字,那么這些成員都是public。使用class還是struct關(guān)鍵字來定義類,僅僅影響默認(rèn)的初始化訪問級(jí)別。 可以等效地定義Sales_item類為: struct Sales_item{ //no need for public label, memebers are public by default //operations on Sales_item objects private: std::string isbn; unsigned units_sold; double revenues }; 本例的類定義和前面的類定義只有兩個(gè)區(qū)別:這里使用了關(guān)鍵字struct,并且沒有在花括號(hào)后使用關(guān)鍵字public。struct的成員都是public,除非有其他特殊的聲明,所以就沒有必要添加public標(biāo)號(hào)。 用class和struct關(guān)鍵字定義類的唯一差別在于默認(rèn)訪問級(jí)別:默認(rèn)情況下,struct的成員為public,而class的成員為private。 |