C++中struct与class的区别是什么?
时间:2010-06-13 来源:sinodragon21
从语法上,在C++中(只讨论C++中)。class和struct做类型定义时只有两点区别:
(一)默认继承权限。如果不明确指定,来自 class的继承按照private继承处理,来自struct的继承按照public继承处理;
(二)成员的默认访问权限。class的成员 默认是private权限,struct默认是public权限。
此外,作为语言的两个关键字,除去定义类型时有上述区别之外,另外还有一点点:“class”这个关键字还用于定义模板参数,就像 “typename”。但关键字“struct”不用于定义模板参数。
除了这几点,class和struct基本就是一个东西。语法上没有任何其它 区别。
(一)默认继承权限。如果不明确指定,来自 class的继承按照private继承处理,来自struct的继承按照public继承处理;
(二)成员的默认访问权限。class的成员 默认是private权限,struct默认是public权限。
此外,作为语言的两个关键字,除去定义类型时有上述区别之外,另外还有一点点:“class”这个关键字还用于定义模板参数,就像 “typename”。但关键字“struct”不用于定义模板参数。
除了这几点,class和struct基本就是一个东西。语法上没有任何其它 区别。
相关阅读 更多 +