当前位置: 首页 > news >正文

网站分析步骤校园网站建设途径

网站分析步骤,校园网站建设途径,文创产品设计作品集,凡客东西网类与对象 我们在C语言中自定义的struct 叫做结构体,而在C中我们把struct升级为了类,并且还加入了一个class,也称为类,那么我们今天就来看一下结构体和类的不同和相同 1.结构体与类 我们在C语言中的结构体是struct,而…

类与对象

我们在C语言中自定义的struct 叫做结构体,而在C++中我们把struct升级为了类,并且还加入了一个class,也称为类,那么我们今天就来看一下结构体和类的不同和相同

1.结构体与类

我们在C语言中的结构体是struct,而在我们的C++中升级成了类

我们先看一下它们有什么不同

我们先看一下C语言中结构体是如何定义的,这个是我们在C语言中的结构体,如果我们像定义一个obj的对象该怎么弄?

 

我们看到就是这样,我们需要把struct也写上,所以在C语言中o变量的类型就是struct obj,那么如果我们在C++中该怎么做呢?

我们在C++中struct升级为了类,而在C++中,我们的obj就是对象名,但是我们也可以前面加struct,因为这是为了兼容C语言的语法,不过如果想在C语言中也直接使用obj也是可以的,需要在前面加typedef这个就不演示了

2.类 

既然struct在C++中升级为了类,那么C++中其他的类的特性是什么?

我们下面来看一下。

在C++中除了struct可以定义自定义类型外还可以用class来定义,我们先用struct来看一下

由于C语言的封装性太差,我们可以直接访问到类里面的对象,所以使用起来并不是特别的好,那么在C++中,我们还可以在类里面写函数,我们还加入了访问限定符(private protected public)这三个限定符的作用是有不同的作用

下面我们来看一下

2.1 访问限定符

首先是private

 这个是private,这个有什么作用呢??

如果我们想访问这里面的三个变量中的任意一个可以吗??

 

我们看到是不可以的,因为private的意思是私有,在private到下一个访问限定符之前里面的成员函数或者是成员变量都是在该类外面不可访问的,所以不可以直接这样访问

下面在看一下protected

 

如果是protected呢?

我们还是访问里面三个变量中的任意一个 

 

我们看到protected和private在这里一样都是在类外面不可访问的,这里看不出他们的区别,后面会有不一样的,这里先不说

还剩一个public

 

这时候我们还是访问里面的变量

 

这时候我们再看一下 ,我们访问能不能成功

我们看到 这时候是可以访问的,并且还可以修改

2.2 struct 和 class的区别

那么steuct和class的区别是什么呢??

同样是自定义类型他们的区别在哪里呢?

我们来看一下

如果我们不给访问限定符会怎么样?

这时候我们没有给访问限定符,我们想访问一下这里面的变量可以吗?

 

 

我们看到是可以的 

那么如果这时候我们换成class会怎么样呢??

我们现在还是访问里面的变量

 

 

我们看到是不可以访问的,并且我们看到显示stack里面的a是private的,这里说明我们的class没有给访问限定符,但是默认访问限定符是private的,而我们的struct默认访问限定符是public的

结构体和类的区别 (2)

在C语言结构体中,里面只可以放变量,但是在类中我们还可以放函数

我们来看一下,因为这样可以更好的管理

我们还可以这样,把属于这个类的函数也放在这个类里面,在类里面的函数我们成为成员函数,在类里面的函数,而会自动成为内联函数 

那么如果我们想调用这个类里面的函数怎么调用呢??

我们在类里面的函数我们直接这样调用

 我们直接  “对象.“调用

我们来看一下

我们调用成功

2. 隐藏的this指针

我们来看一个类

 我们这里有一个日期类

我们继续看

我们现在定义两个日期类的对象,并且初始化一个,然后我们就分别打印两个对象我们会发送什么呢?

 

我们一个是缺省值,另一个是给定的值

但是我们调用这个Print函数为什么会打印出不同的内容呢?也就是我们可以分别打印出d1 和 d2的值呢?

这是为什么呢??

这里直接说了,因为在我们成员函数中都有一个默认的this指针

 

就像这样,如果调用这两个函数,我们的d1. 和 d2. 分别会传入Print函数,就像这样

 

然后我们打印的时候是这样打印

 

我们就是这样调用,那么我们传入的时候也是这样

 

我们调用的时候就是把d1和d2这样传入进去

但是我们在对成员函数传参的时候,我们不能显示的传入this指针,也不能显示的在函数参数那里显示的加上this指针 

而this指针的传入1编译器就帮我们做了,所以我们也不需要显示的传,但是我们可以在函数中显示的使用

就像这样,我们可以显示的使用

正是因为有这个this指针,所以我们可以准确的打印出对应变量里面的值

所以如果我们想写这个函数的Init函数我们可以直接这样

 

我们可以这样初始化

 

我们打印看一下

 

我们看到是可以的,这个就是隐藏的this指针 

 

http://www.lakalapos1.cn/news/2554/

相关文章:

  • 软件网站模版404 wordpress
  • 做海报的专业网站云南建设银行官方网站
  • 历史上的今天 网站如何做谷歌怎么做网站推广
  • 湘潭网站建设优等磐石网络深圳哪里有做网站的公司
  • 龙岗龙城街道网站建设家居设计
  • 上海网站备案管理中心阿帕奇网站搭建
  • 东莞营销网站建设哪个平台好网站建设领导小组
  • mvc5网站开发项目下载找网站
  • 工业设计网站象书店网站开发
  • 成都建设局官方网站郑州网站建设tpywlkj
  • 微网站怎么制作微网站建设报价方案
  • 在哪里创建网站平台中国114黄页网站宣传广告
  • iis发布html网站wordpress 调用文章 分页
  • 网站建设和赚钱方法wordpress主页登录注册
  • 做明星网站公众号怎么开通
  • 公司对网站排名如何做绩效建网站需要买什么
  • 网站备案拍照背景图国外网站查询
  • 深圳企业网站制作公司哪家好漳州网络科技有限公司
  • seo排名优化的网站网站的图片尺寸
  • 天津最好的网站建设公司著名网站建设公司
  • 佛山新网站制作平台集宁建设局网站
  • 网站解决方案wordpress博客统计代码
  • 布吉附近网站建设江苏建设人才无纸化考核网站
  • 温州哪里有做网站商标查询入口官网
  • 顺企网哈尔滨网站建设python培训比较好的机构
  • 大型企业网站源码水墨网站设计欣赏
  • 网站建设的基本条件建立网站的流程
  • 网站开发最好用什么软件诸暨市住房和建设局网站
  • 空间站免费版下载电商类网站开发
  • 网站线下服务中心建设方案河南省建设厅证件查询官网