请问c++里struct里的function和class里的function的编译过程有区别吗?
导读:你好,作为一个程序爱好者,很高兴回答你的提问,关于C++中的struct和class中的function编译过程的区别?我的回答如下:如果是C语言中的struct和C++中的class差距还是有一些的,比如C语言中根本就没有Class的概念...
你好,作为一个程序爱好者,很高兴回答你的提问,关于C++中的struct和class中的function编译过程的区别?我的回答如下:如果是C语言中的struct和C++中的class差距还是有一些的,比如C语言中根本就没有Class的概念,C语言中struct不能包含函数,但在C++之中,struct和class都可以有函数。
下面主要说说C++中两者的主要区别:
一、概念上
struct,是一种全局可见的数据和方法的结合,简化数据逻辑结构的设计,是一种数据结构。而class,则是将数据与方法封装,则是一种编程方法,体现的是一种面向对象的编程思想。
二、成员的默认访问权限。
class的成员默认是private权限,struct默认是public权限。
三、定义与初值
struct可以在定义时用{ } 赋初值,而class不行
四、附加作用
class关键字还用于定义模板参数,但struct不用于定义模板参数。
五、设计考虑
C++中的Struct设计完全考虑对于C的继承,C++中Class的设计才是面向对象的设计类型,其它的地方基本无差别。
以上是我的观点,希望对你有帮助。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 请问c++里struct里的function和class里的function的编译过程有区别吗?
本文地址: https://pptw.com/jishu/18740.html