问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言中的class的应用

发布网友 发布时间:2022-05-02 18:38

我来回答

5个回答

热心网友 时间:2022-06-21 06:34

1、C语言里没有class函数的概念,class是C++中的关键字。
2、C++是基于C的一种面向对象扩展,它在C原有结构体(struct)的基础上,扩充了struct的功能(增加了成员函数,以及访问控制,继承等),并增加了class这一新定义。实际上class和struct的唯一区别就是:struct中的默认访问控制权限是public,而class的默认访问控制权限是private。
struct RecTangle{
int width; int height;
int pos_x; int pos_y;
};
给他添加一些成员函数
struct RecTangle{
int width; int height;
int pos_x; int pos_y;
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};
为了隐藏结构体内的成员,添加访问控制标识:
struct RecTangle{
private:
int width; int height;
int pos_x; int pos_y;
public:
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};
如果用class来代替struct,则需要添加访问控制标识.
比如用class来定义类C结构体
class RecTangle{
public:
int width; int height;
int pos_x; int pos_y;
};

热心网友 时间:2022-06-21 06:34

C语言里没有class的概念,你可以写

int class = 0;
而不会有任何报错。
C++是基于C的一种面向对象扩展,它在C原有结构体(struct)的基础上,扩充了struct的功能(增加了成员函数,以及访问控制,继承等),并增加了class这一新定义。实际上class和struct的唯一区别就是:struct中的默认访问控制权限是public,而class的默认访问控制权限是private。
你可以定义一个类C的结构体
struct RecTangle{
int width; int height;
int pos_x; int pos_y;
};

给他添加一些成员函数

struct RecTangle{
int width; int height;
int pos_x; int pos_y;
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};

为了隐藏结构体内的成员,添加访问控制标识:
struct RecTangle{
private:
int width; int height;
int pos_x; int pos_y;
public:
int Right(); // get right
int Bottom(); // get bottom
int Left(); // get left
int Top(); // get top
};

如果用class来代替struct,则需要添加访问控制标识.
比如用class来定义类C结构体
class RecTangle{
public:
int width; int height;
int pos_x; int pos_y;
};

热心网友 时间:2022-06-21 06:35

你说的class是类的吧,在c语言中是没有这个概念的,我指的是编程,class是c++中引入的,与c语言中的结构体有类似的地方,但是又有很大的不同,class中可以定义成员变量还可以定义方法也就是函数(c中概念),但是结构体却不能定义方法,这是一大不同,另外就是类class定义对象,结构体是定义的值,两个是不同的定义,大的方向你要搞清楚class是面向对象编程中的概念,c语言中的结构体是面向过程编程中应用的,各自的用法都是用来编写程序,class的定义以及用法,你可以参考下c++相关基础会清楚些,

热心网友 时间:2022-06-21 06:35

差不多。class除了能定义变量,还能定义函数。
内部变量是私有时,只有内部函数能操作

热心网友 时间:2022-06-21 06:36

在一个文件中定义结构体,数据成员直接声明,方法成员声明一个函数指针,然后在结构外面定义这些方法成员就行了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
抖音弹幕怎么关掉?怎么关闭抖音弹幕? 惠普LaserJet P3005D是否支持B5纸的双面打印? word打印出图片总是缺一部分怎么办-word打印图片不完整怎么解决_百度... 理想one哪里产的车辆? 抚州抚州ONE在哪里? one地址在哪里? 如何在图片上写字(如何在图片上添加文字) 网商贷为什么钱没到账 高级经济师职称怎么评 高级经济师需要评审吗 与宝马死磕运动感 全新Mercedes-Benz C-Class外观设计语言解析 一机双卡怎么设两个? 一机双卡怎么设两个? 广西有什么广西特有的节日? 一个人两个手机号,怎样注册两个? 一个人两个手机号,怎样注册两个? 如何访问仅限好友访问的qq空间 微信分身一部手机两个怎么互传信息? 微信分身一部手机两个怎么互传信息? 微信分身一部手机两个怎么互传信息? 微信分身一部手机两个怎么互传信息? 一个代码针对两个股票是怎么回事? 2014年至2015年医药类基金哪家做的最强排名第 同一个怎么分身 同一个怎么分身 基金000831工银医疗保健申购要几天后 000831工银医疗保健是跟踪大盘哪个版块 动态乐谱《红颜劫》D调竹笛 简谱+五线谱 跪求姚贝娜的菩萨蛮、红颜劫,钢琴五线谱~ 甄嬛传 钢琴谱,那里有,要高质量的,最好是带声音的乐谱。 奔驰c—class是什么车型? C语言中的class的应用怎么用? C++中 new 在什么时候用?? 为什么 Class c = new Class报错? 新车速递 | 2022款梅赛德斯·奔驰C级轿车正在纽博格林赛道热身 C语言中的class函数有什么用~ 梅赛德斯奔驰c-class多少钱 奔驰的E级C级等等各个级别都是什么意思? 新手关于C语言中类(Classes)的问题,求高手! C-CLASS 中文是什么 求问南通考初级会计的地方在哪 南通考初级会计职称不是在职人员可以考吗 在南通,应该如何报名考会计证? 我想问下江苏省南通市初级会计大概有哪些考试地点呢? 江苏省南通2017年会计初级职称什么时候报名,报名流程是什么 会计初级职称报考问题 我在南通领的会计从业证,想在其他市考会计初 初级会计考试有南通的么,在经济开发区的报名点报市直还是通州区呢?还有市直是指哪里呢? 会计证是在南通注册上岗的的,现在在上海参加工作,想要报考会计初级考试,该怎么弄 SD敢达MAC怎么用 如何把微信讲的课程录音到q q 买完课程后可以分享给朋友看吗?