00:00
好,这是我们C加课程的第三讲,就是十分钟十分钟这样录的,所以说是这节课你可能看不太尽兴啊,所以说你就可以继续跟着我看,你可以停下来喝杯咖啡,继续来看我们接下来呢,再看这个地方。我们因为是我以前一直是写一个C语言的,现在呢,是因为各种需求,我必须要写那个C加加,所以说是下来以后也是还有诸多的就是异同的地方,那么给我最大感觉就是这个Co以及print f,这个我们在上面就已经啊,看这里。嗯,稍等这里我就已经是和stand,这就好像是,这其实就是我C里面的移民嘛,就进来必须要就要主动写一下,看看是不是兼容能打印出来,但是这是不要忘记看这后缀面CP。C plus plus就是C加加的领对不对,我就是一定要慢慢的,我们如果写写这个C加加的话,我们要把这个观念转变过来,一定要用这个Co,这个Co呢,它很高级,它可以你可以看这边写的话,它可以识别类型的功能,比如说是这边有一个ask的,比如说有一个符号常量,说是97,直接97给这个Co传进来以后,如果是对于C的话,你一定要很明确这个值,你觉得拿什么东西要打印出来,你是十进制打印,还是二进制打印,还是16进制打印,还是字符打印,但是court呢,不需要你只管传我自己,我自能的识别你,我一会儿要打印出一个什么东西。
01:49
当然了。他这边也讲了,如果你觉得print f有什么根号,10.2d这种高级的用法的话,那也无需担心,在之后呢,会有更多的用法来实现这种效果,所以说你可过度的时候可以用这个print,但是如果你要一直在写C加加的话,这样的感觉就是说还是少写,但是如果你要是写嵌入式的话,我哎我我又建议用这个print,而且是用的print f这个东西,接下来呢,我们这边呢,插一个很重要的东西。
02:28
我之前呢,也用过这个IDE很多次,但是就是学习的时候你不可能写一个,你想要写一个小程序,你就要这样点一个项目啊,新建一个项目,这样就很不方便,对不对,而且你有这么多项目,你点起来也不方便,你想想你就学习一个C加加上面开20几个这样的窗口,那你本身机器也是一种负担,那怎么办呢?这样做看见没有?还是我们当前最开始建的方案,我们在这个地方点右键。
03:02
监测点添加。点新建项目。啊对,这是不是我们熟悉的样子呢?对,点这里。下一步。我们这边弄一个直接点回车创建,稍等一下在创建中。我们可以看到。也就是说在解决项目里面,我们又建立一个新的啊,看见没,它已经是一个建好的话,也就说股架都已经搭好,我们可以直接应应用,当如果你用到现在的话,你可能是你感觉是本地运行的话,你现在就是假如说你这边没有跟着我做任何的操作的话,现在运行的话,它是第一次你生成的hello word,它会打印第一次成功的,你不会在当前写的这个程序里面有反应会怎么办,这样做还是在点这里点右键点属性。
04:03
在这边选择这个通用选项呢,选当前的选定内容,看见没,这就是在我们里面有各种各样的,就是我写的,这是我稍微写了一些小的程序,你要一一定要点这个当前学的内容,选好以后点确认,那么做过这些设置之后呢,就是你对于C加加的学习用这个,如果你学习的平台和我是一样的,那么你就可以很方便的通过这样不停的新建项目来写,而且运行的话,不用在设置说是你要指定当前运行哪个项目,那么它总之是指定你当前打开这个项目,这样就很方便啊,我发现网上现在所有的教程都没有讲这个,这也是我自己。摸索了一下才发现的这个东西,我感觉我应该是第一个人讲这个,嗯,啊对下面这些东西我们先不用看,因为这是我们上面视频里面也有讲过的。
05:06
这个地方呢,其实是差一点东西的,我没有我没有讲,就是这个C加加,它是一种op语言,它叫做面向对象的语言,面向对象语言里面有一个我认为这个特性啊,它不是描述的就是那么强烈,叫什么叫做重载。就是这个就是重新定义,就是重载操作符,就是说对于一个加号而言呢。它不仅仅是我们认识,我们意识中认识的那样,它只可以做数字上的加减,并不是它还可以做字符串的增加,就是说这个符号呢,在语境的不同,在不同的语境下,它显示出了不一样的作用,但是它的长相还是了一个长相,就是说操作服务赋予了它全新的一种功能,这就叫重载电影服。所以说呢,其实如果你要是单独的看这两个符号来讲,这不就是两个大于号,对,它就是一个大于号,但是这这个时候为什么可以当一个符号指向这个信息的流向呢?这就是我们进行了操作符的存载,然后在头文件里面对这个符号做了一些定义,做了一些限制,这样讲。
06:22
对于C加加里面,对于就像一个函数一样,你要调用一个函数,或者说是,或者说如何操作函数,它有这这个我这里讲的有点混乱啊,我这里必须要插一下这个面向对象的说法,面向对象呢,它是把它里面的函数包装成一个一个的叫做。嗯,包装成怎么讲,就好像是一个一个可以独立自主运行的小机器一样,它里面有两种东西,一叫做数据,二叫做操作数据的方法。
07:01
他们之间是彼此彼此的一个个体,当我们要把它做成一个更大的程序的时候,我们把它拿过来,一个一个的按照我们的逻辑顺序把它们排列好,这些个体之间彼此要进行通通讯,就是说我们要彼此传递这种变量,要怎么办?这里就是我们这句这里说的两句话,一叫做使用类的方法,就是我们这里给你解释一下,就是说在这个stand里面,这个类用这个方法,后面呢,这个是给它传的参数,这就是完成了一次消息的调用。或者说它又是一种CT的语音,可以用我们最早之前我们认认识的那个东西叫做函数调用,直接写上它的函数名,给它的参数就好。这里给你显示了一下,如果要调用函数的话,它的整个流程,对CC语言呢,它有一个入口的方法,就是main,它开始用他所有的就就第一步加载的时候,别的不管程序写的多么精妙,多么好,多么low,就编辑器都不管,那机器都不管,它首先第一开始就要找你这个入口地址,那么在底层的话,它首先要找到你这个加载的地址,它才可以一步一步调用,这点点的意思就证明就经过了很多步,直到调用到这一行,X等于square后面六加21,这个时候这是一个函数。
08:33
函数到这里中断,就是它去调用,看这个箭头的指向,做到了这个时候要去进行一次运算,就是要执行这个代码,执行完之后它肯定要返回个值,接下来再返回来,返回来这个时候呢,后面是要做的事儿,做完了返回的值赋给了X,这个X它现在有了全新的含义,它再继续往下运行,所以说对于函数来讲,你的分支的语句都是这样运行的,突然这个地方打一个中断,就好像把程序中断在这里去干活,干完活带着他的成果回来,就是这个意思。
09:13
接下来呢啊,我们这个函数的调用的句法,我们必须要看一下,因为我们后面大量的要是你既既要调用别人写的,也要调用库自带的。以及自己写的,这都是经常要用的,我们来看一下它的方法。它的写法呢,我们这样,我们先不要看它前面S等于我们先看这部分,对于一个函数呢,拿到以后,我们要掌握以下这么几个,我们要知道他的一些。东西第一个是什么?第一个就是要知道这个函数的作用是什么,就是说我要拿过来,它要实现一些什么东西,第二步是什么?第二步我们要知道它的参数,就是说你要给给这个函数里面传递一些什么样的信息。
10:02
这就是我们最重要的两个特点,以及第三个要考虑的东西,就是说这个函数运行完,它是就像一些初始化的,比如说是嵌入式里面的初始化的代码的话,它是不需要返回任何东西,它只需要初始完初始化版就好,如果是它里面有一些阻塞性的语句,就是说比如说是有有七个传感器吧,1234567,这个初始化的线程,它在开机的时候开始运行,第一次就需要配置好这些硬件,它如果它运行到第六个硬件错误的话,直接抛出去,直接这个程序就中断,就不再执行了,直接阻塞就是直接就是停下来。不去运行,这就是没有返回的,或者说其实它也有返回,只不过是在硬件里面的返回,它就是在外在一种表现,就是说硬件整个人都会被整个系统都会停下来,因为当机了嘛,死机了,那么继续转回视角,转回我们C加加,就是说你这个函数运行完之后,要不要返回一个东西,如果你要返回这个东西,它不就像脚本语言那样,它很智能的直接就是把这个函数,呃,编辑器,它会内在的处理成赋,赋给了一个,赋给了一个别的值,它不是这样,对C加来讲,你必须很明确的用一个用一个值来承接它返回这个东西啊,这个写法呢,就是这样,一定要注意,对四加语句一定要有一个解语句的结束符。
11:36
接着呢,这边呢,就是写了一个代码嘛,上面这些注意,如果你要用这个square这个函数的话,你在C里面你引入是math.h,但是在C加加里面呢,它将这个库重新的写了一下,你需要引入这个就是c mass,这个一定要写好,接着呢,那你就可以用心注意看,这是我们之前都要讲过的东西啊,这个地方比较像double area,最后会讲我们注意调语句,从右往左看,就是enter floor area in square feet of your home,然后就是这个语句传给了这个。
12:15
对不对,就是发给了这个。发给之后,这个叫叫,然后它打印在屏幕里面继续执行下去,什么这两个语是相对的,S是接收一些数据进来,怎么接收。注意看,从右往左看,看它的方向是不是这样呀。也就是说是,呃,我们这边放的大大的,我给大家讲这个东西,跟大家讲一下这个方向的问题。是不是从右往左看呀,从右往左看,但是我们这边要注意一下它的符号是不是这样的呀,那么也就是说我们之前也讲了,就是这个东西和上面是相对的,它是打印,那么它就是输入一些什么东西,对不对,就是说你要你要在未来的这个地方有有一个输入呀,或者鼠标什么,你要输入一些东西给他。
13:10
他接收到这个东西,他就好像一个手一样,他只管接收,但是接收完之后,这个手不能一直站着,对不对,你要把它放到一个容器里面,就是通过这个方向的话,放在这个area这个东西里面,这个area这个东西是什么呢?它是一个名字,我们在上面打包area,我们已经给他做了一个很详细的,就是要放在这个数据结构里面啊,接下来同理啊,接下来就是运行这个东西,看见没,进行了一次函数的调用,接着把它的返回放在side里面,接着呢,我们把它用这种语句,注意看它的方向,继续把它打印出。之后呢,它会RETURN0 return0什么意思,RETURN0这个return返回到哪儿了,我没看见它打印就是这个地方,这个may返回给了你现在操作的这个系统,就是返回给了你的最大这个硬件啊,就是这个意思。
14:09
接下来呢,就是写了一个自己的子函数,这个我们下个视频,再见。
我来说两句