引用:
根據C++ standard的描述, class 和 struct 對於 class definition 的差別在於:
1. 對於 member 的 default access level 不同(std.11)
2. 對於 base class 的default access level 不同(std.11.2)
整理:
1. class預設權限為private,struct預設權限為public
2. 兩者在C++可以互相繼承
3. C++原本叫做C with Class,可以看出Class為C++的核心理念
4. 兩者幾乎無異,可以只使用其一
5. 若要 class 或 struct 能做 expilcit inialization,該 class
不能有 constructor,不能有 private or protected data member,不能有
base calss,以及不能有 virtual function
expilcit inialization(initializing array):以array的方式做initial
ex:class A{
int a;
string b;
double c;
}
A test = {1, "a", 1.0};//initialize A 裡面的變數
沒有留言:
張貼留言