C++中class和struct的区别

面试题很喜欢问的题目。找了一些资料,发现两者只有以下区别:

1. In absence of an access-specifier for a base class, public is assumed when the derived class is declared struct and private is assumed when the class is declared class.

2. Member of a class defined with the keyword class are private by default. Members of a class defined with the keywords struct or union are public by default.

翻译过来就是:

1. 默认继承权限的区别:如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理。

2. 成员默认访问权限的区别:class的成员默认是private权限,struct默认是public权限。

 

其它方面,例如各类构造函数,虚函数,重载预算符,复杂继承多继承什么的,两者都是一样。

 

参考:

http://blog.csdn.net/swanzy/article/details/3130331

http://www.justsoftwaresolutions.co.uk/cplusplus/struct_and_class.html

转载于:https://www.cnblogs.com/techyc/archive/2013/03/25/2980629.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值