C++類與結構體類型
C++與C語言不同,在C語言的基礎上增加了class類型後,仍保留了結構體類型struct,而且把它的功能也擴展了,允許用struct來定義一個類型,可以將前面用關鍵字class聲明的類類型改爲用關鍵字struct:
struct Student //用struct來聲明一個類類型
{
private: //聲明以下爲私有的
int number; //學號
char name[10];//姓名
char sex; //性別
public: //聲明以下爲共有的
void print_info() //打印
{
cout<<number<<endl;
cout<<name<<endl;
cout<<sex<<endl;
};
}
Student stu1,stu2;//定義了Student類對象
C++不是簡單地繼承C語言的結構體,而是使它也具有類的特點, 以便於用於面向對象程序設計,使結構體類型也具有封裝的特徵。
在C++中用struct聲明的結構體類型實際上也就是類,如果對其成員不作private或public的聲明,系統將其默認爲public;如果想分別指定私有成員和公用成員,則應用private或 public作顯式聲明。
而用class定義的類,如果不作private或public聲明,系統將其成員默認爲private,在需要時也可以自己用顯式聲明改變。
如果希望成員是公用的,使用struct比較方便;如果希望部分成員是私有的,宜用class,建議讀者儘量使用class來建立類,更符合C++風格。
C++類和結構體
更多案例可以go公衆號:C語言入門到精通