赞
踩
C++中的struct对C中的struct进行了扩充,考虑到“对c兼容”就将struct保留了下来,并做了一些扩展使其更适合面向对象。它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。
1.默认访问控制不同
struct 与 class最本质的一个区别就是默认的访问控制。
在默认的继承权限和默认访问权限里,struct是public的,class是private的。
2.{}初始化特点不同
class和struct如果定义了构造函数,就不能用大括号进行初始化了;若没有定义,struct可以用大括号初始化,而class只有在所有成员变量全是public的情况下,才可以用大括号进行初始化。
故struct更适合看成是一个数据结构的实现体,class更适合看成是一个对象的实现体。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。