C与C++中struct及C++中struct与class的区别

C++中struct与class的区别

struct class 备注
成员函数 均有构造函数及析构函数
继承性
多态性 均有虚函数
默认成员属性 public private
默认继承属性 public private
能否定义模板
性质

数据结构的实现体

,能兼容C的结构体

类对象的实现体
初始化

如果没有构造函数

,可以用大括号初始化;

如果有构造函数,不可以

用大括号进行初始化

一般用构造函数初始化,

如果没有构造函数,且为public

属性,可以用大括号进行初始化,

private属性不可以用大括号进行初始化


互相继承 struct可以继承class class可以继承struct

C与C++中struct区别

c c++ 备注
区 别                                                       C是过称化语言,struct只能作为复杂的数类型定义,struct只能定义成员变量,
不能定义成员函数,但可以使用指针来实现。                                                                                                   
C++新增支持面向对象思想概念中类的概念,struct具有更强大功能,不仅能和数据组织在一起,还可以与数据相关的方法组织在一起,具有与class相似的功能

C中的struct与C++中struct的差别比C++中struct与C++中的class的差别要大

发布了73 篇原创文章 · 获赞 269 · 访问量 88万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览