在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一、使用class和struct定义类唯一的区别是默认的访问权限。 如果使用struct关键字,则定义第一个访问说明符之前的成员是public的,或没有访问说明符,则默认为public;相反,如果使用class关键字,则这些成员是private的,或没有访问说明符,则默认为private。 注:访问说明符:public、private 1 class Sales_data 2 { 3 double price; //默认为私有成员。 4 ..... 5 }; 6 7 struct Sales_data 8 { 9 double price; //默认为公有成员。 10 ..... 11 }; 二、默认继承权限不同 如果不明确指定,来自class的继承按照private继承,而struct的继承按照public处理。struct和class可以相互继承,但当交叉继承时,到底默认继承的public还是private的,这个要和子类关键字有关。 struct A{}; struct B:A{}; //公有继承 class C:A{}; //私有继承
如果将其中类A的关键字变为class 1 class A{}; 2 struct B:A{}; //私有继承,默认的继承访问权
若是还想类B公有继承继承class A,则需指定继承类型,如下: 1 struct B :public A{};
三、定义模板参数 定义模板参数时,我们可以用class或typename,但是这里不能用关键字struct去定义模板参数。 个人水平有限,若有错误,欢迎指出,谢谢! 链接: http://www.cnblogs.com/ccsccs/articles/4025215.html http://www.cnblogs.com/findumars/p/5006172.html http://blog.csdn.net/nocky/article/details/6195556 http://www.cnblogs.com/niaowo/p/4502519.html
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论