聚合類(aggregate class)使用戶可以直接訪問其成員,并且具有特殊的初始化語法。當(dāng)一個(gè)類滿足以下條件時(shí),我們說它是聚合的:
- 所有成員都是public
- 沒有定義構(gòu)造函數(shù)
- 沒有類內(nèi)初始值
- 沒有基類,也沒有虛函數(shù)
我們可以提供一個(gè)花括號(hào)擴(kuò)起來的成員初始值列表,并用它初始化聚合類的數(shù)據(jù)成員,初始值的順序必須與生命的順序一致,初始值列表的元素個(gè)數(shù)少于類的成員數(shù)量,則靠后的成員被值初始化。
struct Person
{
std::string name;
int height;
};
int main()
{
Person person={"xiaohong",10};
std::cout << person.name<<" "<<person.height << std::endl;
system("pause");
return 0;
}