南湖大道茶山游。
粉丝125获赞502

and to me show me the way and my crystal heart now i don't mind and me show me the way my crystal heart now i don't but。

好,那么同学们啊,今天的话呢,我们就是给大家呢开个头,呃,我们接下去的课程的话,主要是学这个叫做 qtqt 啊,那么 qt 的话呢,我也给大家简单的介绍一下,有同学可能是没有了解啊,那么,呃,我们要知道 qt 它是一门语言吗? 回答一下算是吗?不是啊,不是不是啊,答案不是啊,为什么呢?因为他只是一个,只是一个酷, 只是一个酷而已啊,那么这个酷是什么呢?这是一个封装的 c 啊,加加的的酷啊,那么实际上也可以说是封装的酷的话,我们一般来说都可以说成好像 一个框架一样的框架,一样的框架啊, qt 框架对吧?啊,那么类似的啊,类似的风装 c 家家的裤还有什么呢?还有啊, mfc, mfc 啊,这也是封装 c 家家的库,那么这个库的话呢,是微软的啊,这个是这个是微软的,微软封装的,微软公司,大家都知道的,对吧?那么这个库呢话呢是呃 q t 的这个库的话呢,他是谁谁呢? 呃,原来是诺基亚的,我记得啊啊,后面是被收购了,我们来看一下啊, qt 原来是谁?什么啊?看到没有,他就是叫做应用程序框架对不对?首先定位就是个框, 讲并不是语言是吧,现在像拍摄的话呢,我们刚刚提到的就是啊,他其实呢,呃,也只是一个脚本解释程序而已 啊,那么我们这个写拍摄的人,因为觉得他好用吗,然后写了很多东西,所以习惯性叫做拍摄语言啊,那本质上也是一个教本解释程序,那么一般来说,我们一些这些语言的话呢,都是具有这种编意性啊,编意编意成什么的,一般来说这个要更加大一点的啊。 嗯,那么现在的话呢,我们其实很多交会程序也是非常强大的定做的,那么这个最早的是哪个公司的?看到 啊,诺基亚吧啊,被诺基亚公司收购的,哈哈。那再早一点是什么?没写啊,已经他的历史 他历史再看一下,看一下他的第一届呢,这是某某,估计是一个组织一样的东西啊,来开发的 qt 有个公司之前成立了,然后呢后面是一个基金会啊,哒哒哒。 一开始的时候估计是是像一个小小小团体啊,对吧,就像你们现在这个小团体啊,以后有可能会发明某一种语言,哈哈哈。啊,那么我们来看到啊, 呃,研发公司是属于 qt company 啊,原来的,那么后面是被诺基亚公司收购的,也就说后面的话呢,我们诺基亚手机我们早期的那块摔不坏的那一款啊,很强的对不对啊,怎么摔也摔不坏的砖头,那么 这样里面就有这个 qt 的这个框架啊,啊,对吧,因为被他收购嘛,那他肯定多多少少是要去使用的对不对?好,那么 呃首先我们定定位啊,这个地方是 q t 公司啊, q t。 康复内对吧?公司康康内啊康复内。那么这个 q t 我们要来有什么用 啊?有什么用?笔记做好自己,就这只大老一样的。这个听着啊,大老爷们的啊,这个有什么用呢?他本身有什么用呢? 他本身的话呢?呃,其实就是因为他是个酷吗?对不对?既然是个酷的话就是封装了好多好多的函数啊,那么就是方便使用而已,对吧?就方便方便使用这个 c 佳佳啊, c 佳佳,那么他更大的 还有提供的一个好处,就是啊,帮助我们干什么呢?进行可视化开发,可视化开发,那什么意思啊?我们可以利用这个工具叫做 q t crate 来进行可视化开发。 q t crate 啊,进行可视化开发, 那么这个叫做 qt 啊, c r e a t o r 啊, 用它来进行可视化开发,我们就相当于就很简单了,感觉好像未必这拖一拖空间就可以了,对吧?啊,那么呃,实际上的话呢, 可视化开发只是一个辅助工具而已啊,这个仅仅只是一个辅助工具,我们要知道的是辅助工具啊,辅助工具,那么我们本质上是什么呢?本 之上啊,还是什么呢?调用这个 qt 的库来生成界面,也就是我们可以完全存代码去写我们的这个,哎,一个写出界面来啊,然后呢就写出一些各种各样的空间,就像我们的 htmp 一样, 对不对? gs 一样,这个就是类似于这样的啊,纯代码界面可以去写啊,那么本质上就是用这个酷控件啊,酷的控件, 那么我们 qt 的话呢,我们首先啊,完成之后,我们先来看一下他到底是怎么样的,我这个地方是安装好了一个 qt, 那么后面的话呢,我要教大家 跟大家讲一下这个地方啊,如何自己要去,回去之后在自己家里的电脑上面安装好啊,那么我们默认打开好啊,安装好之后 的话呢,我们其实是这个地方,他会提供这一个可视化的一个开发工具啊,可视化开发工具,你大的那个包里面是有的, 那么呃,也有一些安装好之后,就是也有些没有包含这个安装工具的一个包,比如说你安装的时候没有包含,对吧?没有包含,那么这个没有包含,就像我们的这个拍损当中,呃,没有这个,没有这个包,没有这个包啊,一开始没有,那么后面的话呢,你要去添加一个叫做 q t d 三个, 那么这个东西就叫做 qt 点赞用,那也就是说我们的拍审这个语言当中,对吧?他有一个叫做呃, py qt 五 啊,这一块的话呢,他其实就调用的是 qt, 第三个就是调用的是这样的一个界面,调用的是这样的一个程序啊,然后我们就可以 相当于直接在这个程序上开发完,开发完成之后呢,我们拍摄有一个转换啊,有一个转换可以把这个 qt 的这个代码转化成拍摄的这个代码好了,那就可以直接 就可以直接用了,拍摄里面就可以直接用了,也就说你这一块是跟拍摄也是通的,哎,也是通的啊,可以直接转换。大家没有看过我的呃 q t 五的一个高级教程,对吧?啊?在我的拍摄高级应用教程当中专门讲到 q t 五的开发啊,其实就是针对这一块 啊,那么呃这个里面的话呢,我们看到是有有工程,对吧?大家可以看简单看一下我这一块之前开发的一个电池电压的一个项目啊,看看这个地方还能链接过去啊,那么这个地方的话呢,打开之后 啊,我们看到的是有分成这几块,那么 c c 语言对吧?或者 c 加加语言,这里面默认。其实我们在我们这个是使用 q t 的这个软件啊,其实还有一款软件叫做,呃, vs 软件, vs 这个地方我没有装好啊,用 vs 啊,我们现在维修斯的六啊,维修斯的六并不是 vvs 扣的。不一样的啊, 维修斯六六这款软件当中我们可以开发 c 家家,对不对啊?是那是微软开发的啊,那这个就是,呃,现在我们可以说是我记得比较牢的就是诺基亚,对吧?哈哈哈,那么我反正现在是属于,那因为被他收购的肯定是属于归他所有, 对吧?那么他这个地方我们每新建一个 c 家家的程序的时候,他就会出现这三块啊,一块叫做 head 头部,头部头文件, 也就是啊,嗯,头文键,这个头文键里面一般包含什么呢?包含很多我们函数的名称,就像声明,也就说我们所有 c 家家语言当中啊,我们,呃,我们或者 c 语言当中我们在使用的时候, 我们需要将我们自己写的一个函数,比如说我们现在 gs 当中,之前还是飞机大战的时候,直接翻过去一个函数的名称,对吧?好了后下面定义好,我们就直接可以调用了,对不对?但是在这个 c 元 c 家教当中,我们就必须还要将我们的这个函数名称 加他的括号这些参数啊,后面最后以分号的形式结尾啊,我们就函数体没有啊,这样的一个整个整个名称在哪个位置声明呢?在最上方啊,在最上方声明,最上方声明文件的 最上方声明,如果说你没有声明的话,就意味着他还是无法去调用啊,因为他是代码从上到下开始读的,除非你把这个函数写到这上最上方定义所有的函数翻过去定义写到最上方,那你就可以去调用 啊,这个就是很大的区别,这个也是由于,呃,很多人就是少少使用这个习家家的语言这种来去,比如说是做某一个应用程序,对吧?就是因为很多东西啊,你会发现他比较麻烦 啊,但是 q t 的话呢,已经减少了很多麻烦了,因为已经封装了很多 c 家家的这些代码,对吧?你如果纯使用这些的话呢?就像我刚刚这种模式,我刚刚跟大家所说的这种模式啊啊就比较麻烦,对吧?那么 q t 的话呢,就可以很大程度上我们解决了这样的一个问题,但是呢还 是要存在文件包含性的一个问题啊,要包含,那么这个呢是所谓的头文件,所有的头文件,所有的头文件记录下来他都是以点 h 作为扩展名 啊, head, 对吧? head。 那么,呃,这个上面有一些很多预定一的这些程序啊,这个 qt 里面已经给你预定一好了。那纯西家家语言你去写的话呢?是没有的, 全部你自己去写啊,当然这些东西都是我后面后面自己补上去的,对吧?很多东西都是自己补上去的,创建完成之后这些东西都要自己补上去。我们看看这个程序长得怎么样啊?呃,我开发的一个一个一个电池电压的一个程序啊, ok, 应该是能够跑起来的。 然后就是这样的一个界面,大家看到我这里其实界面是没有的,我是纯代码开发的啊,没有的,对吧?这里直接是 c 家家 cpp 这个语言,对吧? 没有的啊,就是直接是属于呃纯代码开发的,呃这样的一个程序,对吧?大概大概是也差不太多嘛,下危机什么的,什么个意思啊?也相当于你监听端口,什么个意思呢?我开启一个监听的话呢,我就可以获取远程的这个数据了,比如说我去获取真真家具的这种数据, 对吧?监听端口一打开他所有的数据都就就过来了啊,那我这个地方呢是获取什么呢?获取获取这个呃电池电压的这种数据啊, 等等啊,那么这个地方什么采样器啊什么的,同样的我们可以做一些右键启动啊什么的,对吧?等等的啊,比如说也能够做一些很好的这种数据啊,这种数据的模拟, 对吧?这种数据的模拟,那这些图的话呢,要求同学们都是要自己能够会去写的啊,模拟图,对吧?我们比如说我们 实时的将我们的这个光照,光照这个情况获取过来,这个数据我们要能够给他生成这种图形,包括这种图形的话呢,我们也是能够在我们的网页当中也是能够去做的啊, canvas 啊,我们就可以去做,对吧?画图啊,画图工具, 那么呃我们这这其实就是一种比较简简单的简单的一个啊, q t 的一个程序一个界面,对吧?那么这个我现在装的这个版本呢叫做什么? windows 版本,对吧?因为这个 q t 的话呢,它是有一个特性啊,它这个 好处呢,他这就是跨平台的啊,跨平台的,跨平台的,他是跨平台的,那么就 就意味着我们这有有这个什么温德斯版本,对吧?那也有这个,呃呃,六六个四版本啊,六六个四版本,那么我们到时候呢?在我们的这个开发环境上,环境上面啊,比如说我们要开发这个 相关的下位机,去获取我们的这些智能家居数据的,那么这个时候我们是在 obantu oubantu ubandu 这个 linux 服务器上面啊,我们这个地方,比如说我们举例就是一个乌班图 uberantuuubuntu two 是怎么写的 啊?忘记了,哈哈哈哈,乌斑图写中文吧啊?翻译一下就是乌斑图 乌邦图吗?乌斑图吧,乌邦图啊,那我这样吧,查一下吧,乌邦图 我帮 too 啊 t u 吧,应该就是应该写的是对的啊, 般啊,你看就这个对吧?就这个啊,我记忆还是不错的啊。啊,那么这一款呢,也是属于零六克斯开,就是相当于是一个像一个型号一样的,对吧? 那么我们,我们也就是说我们要学会啊,这个不班图的这个零点服务器的一个基本使用,比如说我们如何去复制文件,如何打开目录,如何在上面去编辑 啊,那么呃,与此同时我们学会在这上面如何呃共享文件对吧?共享服务器怎么去搭建 ftp, 你比如说你,你怎么去给他开启,那这些都是基本操作,所以说我说上次,呃,有有 有其他老师在上课的时候,大家可以旁听一下,大家都会学会了,对吧?下次我就不需要讲啊,其实我也我也当然要给大家去讲这些东西,这些都是基础啊,对于我们这里来说应该是基础的基础啊,我们更重要的是做代码的一个开发,对吧?啊?所以我们这个边,我们这个地方的话难度是比较大的啊,具体的一些东西在做的时候, 大家要要花比别人努力十倍的时间去完成,才能够成长的更快啊。那么 无斑图还是无帮图啊?中文反而到错了,哈哈,不不写了,我们就这样吧,那么也就是说到时候的话呢,是在这个地方地方啊,两个平台我们使用的时候在这个平台 平台上面使用,那么这个平台我们上面使用的时候的话呢,我们把这个平台是装在虚拟机上面啊,装在虚拟机上面直接去使用的,那么我这个地方当然 我们也可以直接装在 windows 上面。呃,如果说我们自己家里面的话呢,我们可以直接装在 windows 上面,当然啊,就是说我们同学们也可以直接拷贝一下我们给出来的这个资源啊,一个叙利级文件,然后呢直接装到叙利级,然后叙利文件宰出来就可以了,就直接装好了,都不需要去装了,一共大概有十来个 g 啊, 十来个 g, 那么这个其实这个也也不小啊,你要单独去装这个装这个东西的话也不小啊。啊,你看到啊,好像也有,也有很多很多个 g 啊, qt, 那个这个 qt 文件夹就是我我我装的,装在这个地方,对吧?你看看有多大,有好大,因为这里面的话,我我这个地方我我宰了好多的,他的一些空间支持库等等,对吧?所以他这个地方其实也很大,估计也有个十来个鸡了,所以还是比较大的,大家要准备 大概可能二十个 g 啊。二十个 g 要有,对吧?就比较大本身其实他就比较大啊。 啊不不宰了啊,反正就一直会加吧,大概大概加到十来个 g 吧,印象当中是这样的。那么呃这个地方下载我们该怎么去下?他是一个开源的,当然是免费的,对不对?我们可以直接去下载啊,我们直接搜索一下就可以了啊。呃这个叫做 呃叫做 q t 呃就直接 q t 就 q t。 好像是有个档文件呃这个这个官网你进去是找不到的。 呃到这里啊这个是一个文档到这个啊这个这个这个看到没有?有个档 点 qt 点 io 这里面去找到相应的这些 qt 的版本,然后呢直接就可以下载啊,他是他是开原的嘛对吧?啊直接可以下载各种版本啊,很多版本那包括跟我们训练机同样的这种版本啊。都有啊,我们就下载最新版本就可以了 啊那这里面呢?这个地方这是 windows 上面的啊那我们这不止 windows 上面啊,这有很多的,你可以点赞点进去啊 啊然后呢我们这个地方有个这个新新新狗叫单独的一个程序,你看这个是那那个是上面的对不对?这个是 l v 啊啊 v 的上面的啊。那么你这个地方感觉好像不大啊,只有一个机左右, 一个级左右吗?啊可能可能还只有四百可能这个文件可能还不一定全啊。我们来看一下我这个地方呃我这插件还脏了很多对吧?这是我这地方是我寻思四点八版本的, 我们欧巴看一下啊,五点一二,对,我这里装的是大概是这个版本五点一二的 q t, 五点一二,四点八,对吧?我们来看一下啊,也就说,呃,在之前的时候我们看看我这个四点八大概是有多大 啊?那么比较慢,大家呢?进去之后我记得,呃,我我们这个地方啊,就是说我我 之前是有个 exe 程序的啊,他现在可能最新的这个版本又更新过了,又不一样了啊,那么基本上我们能装上的话,能直接能用就可以了啊, 那下载的位置就是从这个位置那不同的版本他不一样的,大家可以进去之后呢自己去看一下,那这里面我们具体就不多讲,好吧。啊,不多讲,那么我们下载应该会了,对吧?要找到的是这个记一下啊,档点 qt, 点 io, 直接把这个记下来就可以了,我把它它复制一下, 这个就是下载的一个跟目录下载 下载,呃,可以用最新版啊,也可以就是用我的这个版本,我的这个版本我感觉用的还好啊,有,当然最新版不一定是最好的,对吧? 就不一定是最好的,呃,我们要知道的是啊,温特斯上面我们现在写的这个版本啊,就是说我们,呃是无法移植到我们这个虚拟剂上面的啊,会有各种问题的 啊,会有很多很多的问题的,那么也就是说,呃,我们也可以直接拷贝一下我们学校我们这个地方给大家提供的这个虚拟机里面这个版本啊,那这样的话呢,对大家来说安装上面就没有什么难度 啊,那虚拟机我们这个地方就使用 vmvr 都知道吧? vmv 啊,这个虚拟机下载一下就可以了啊。呃,这这 vmv 公司的虚拟很多的,对吧?那这这这个呢? 对吧?这下载地址都有了,对吧?啊?直接安装就可以了啊?啊?破解版本都是啊,当然如果说同学们以后想要投入生产的话呢,还是要使用正规版, 对吧?啊?那么我们来看到啊,看到这个地方,呃, 现在我们下载完成之后,我们比如说该如何去新建一个项目,对吧?我们来完成第一个项目, ok, 我给大家演示一下啊,打开 好了之后的话,我们就会出现这样装完之后会出现这样的一个 qt 的图标,我们装如果是 windows 版本的话,对吧?当然所有的开发的思维思路是一样的,主要的代码是一样的,当我们进行移植的时候可能会进行小小的更改,有有一些个别的代码要进行更改 啊,但是不能,呃,不能就是说完全不更改的情况下就马上能用,这是没有的啊,而且各个版本啊,他所支持的这些库 一些一些代码会有点不同啊,就像我们现在我这个地方是使用 qt 五,对吧?我们呃另外一个环境使用的是 qt 四啊,这两个代码啊,我们在比如说开启骚 t 的这种用法的时候是完全不同的 啊,是完全不同的,当然你在我们这个位置可以去采用 qt 五,里面他是兼容 qt 四的, 我们可以采用 qt 四的写法去写,但是你我们我们在我们我们这个现在因为是属于 qt 五的,也比较标新了, 我们不是看到五点几这个版本吗?对吧?这就是 q t 五的核心,就是 q t 五的,那么这个 q t 五我们上面的写的这个代码,呃,我们像一些语法逻辑,那移植过去的时候,那就会出现问题,那这些代码我们只有进行修改才可以啊。所以我们一般来说开发之前 这样选择好,到底是选择 qt 五还是选择 qt 四啊?那么,呃,很多比赛的时候的话呢,基本上是用 qt 四比较多啊,那么日常的开发的话呢,用 kt 五比较多啊。 好,我们来看一下新建一个工程啊,新建一个工程,比如说我们新建一个 new project, 对吧? new project 一个工程,那么最简单的话呢,反正就是新建一个 opla k 旬,我们如果说下载这个版本的话, opla k 旬就可以了。创建一个 q t 的一个桌面类型的一个版本,那么这个是属于什么呢?这个是康索 康守,康守的话是像像命令行一样的命令提示服一样的这种,对吧?哎,就你运行出来到底是一个什么样的一个东西嘛?哎,这个这个威胁词的话,就是实际上就是各种各样的桌面端的一个主见啊。我们也同样可以用 q 来,比如说写很多的什么类,类似于贪吃蛇啊,游戏也可以能够写啊,那无非就是组建的一个组建怎么去使用嘛?空间怎么去使用嘛?就像下一次我,我跟你说,你能不能用这个网页,用 js 去开发一个贪吃蛇, 那是不是也是控制这个 div 而已啊? div 是不是空间这个地方,我们 kt 是不是也是空间控制其中的?比如说一个 labo 空间, 对不对?雷宝空间就像我们威逼一样去控制一个雷宝空间,同样的道理啊,同样的道理啊,那么这个地方我们新建的时候呢?微句词我们这个地方一个理解啊,微句词其实就是窗体, 其实就是一个窗体啊,我们理解就是理解成一个窗体啊,那么这个地方我们 oplacation 的话呢,就是新建的,是那么多,对吧?呃,然后这个地方利用他的这个 工具的话,其实我们还可以,好像可以用拍摄,也可以变形,那这个地方的话我使用的是 c, 我们这里面好像只有是 c 加加啊,但是我们这款工具的话,好像使用的是好像直接可以使用拍摄变形啊,对,他也支持的啊,也支持的 哦,我们那么这个地方下面有很多,这些地方基本上是没有用的到啊,这个地方有个 get, 大家可以呃呃,客户去了解一下啊,我们可以把我们自己的一些项目开源到网上的这个 get 平台上面,对吧?那这种 大家可以自己私下里去学一下。那如果有必要的话呢,以以后我也给大家去讲啊。那么像这些东西啊, no project 跟这些啊,这些这像,这个主要是属于团队化开发啊, suvs 啊,团队化开发或者版本控制这些东西,对吧?你也基本上不用看啊, 这个呢, nonqt project 这个地方是什么呢?就是建立单个文件的时候,对吧?建立单个文件的时候使用,那一般来说我们也不会在这里使用啊,很少使用在这个地方,当然也会后面有可能。那我们后面绝大多数在使用的时候会使用什么呢?会使用 一键一次,一次新建的时候他同时会新建三个文件,一个文件是属于 qt 界面文件,第二个文文件是属于 c 加加文件, cpp 的第三个文件是属于头文件 啊。一般来说我们在这个地方界面上开发的时候,我们就同时会新建三个文件,待会我会给大家马上演示出来啊。那么 大家看到我的这个项目,我的这个项目有几个文件?拜托人刚看到的时候看到一个 h 文件,还有看到一个 cpp 文件,最后一个是一个最 资源库啊,资源库就是我要调取的图片啊什么的啊,这个资源库是我们另外增加的,这个不算文件啊,所以就相当于是一个资源啊,资源库 资源的一个集合,那么我们在这里面的话,我们直接点击 nupro 加就可以了,对吧?打开新建,新建的话这些是属于设计的,对啊,设计的都都是属于单个的啊,那么我们想要集合的 全一点的,那么这个地方是属于开发一个酷的,对吧?这些一般来说我们在这个位置现在也不需要啊,我们只需要的是第一个 plak 群啊,当然我们 q t 四里面会有点不一样,大家新建的时候会有点不一样,但是大同小异啊,大同小异,我们这个地方讲的时候,以这个 q t 五的这个地方来讲啊。 呃,我们接下去的话呢,是打开这个窗口嘛,就相当于是我们创建一个项目应用程序, 这个应用程序是一个窗窗口的一个应用程序,对吧?我们不是在我们的这个嵌入式开发的那个有个 a 八那个像像手机一样,手机平板一样的那个东西吗?这上面是不是我们其实如果是创建的是这个应用程序类型的话呢?就意味着我们这上面可以看到我们的界面, 就像我刚刚的这个界面,我把它要是稍写到那个东西里面就看到的像刚刚我给他展示出来的这个界面一样的啊,展示出来的界面是一样的,那么,呃,如果说是这种康守的话,那就是一个黑屏了, 对不对?输出的一些日制黑屏的这种,这种吧,那一般来说我们可能输出这种展示型的这种界面会比较的多啊,就像我们把我们的 qq 刷写到这个平板里面去也是一样的,对吧?只不过这是相当于好像一个系统一样,刷进去之后我们打开之后就是他,那就就是个系统,对不对啊?就是个系统, 就是说就像我们不是那个平板,我们不是说过吗?我们把安卓的那个安装程序刷写进去,那他打开的就是一个安卓系统啊, 对不对?我们把我们的程序写完之后稍写进去,那打开的就是我们自己写的这个程序啊,这就是嵌入式的一个开放。好,接下去我们来,哎,下一步 啊,就就直接直接选择他去死,对吧?点击选择他,选择他之后我们接下去要创建一个什么呢?叫做项目文件啊,我们要选择创建好这个路径,这个地方还有个勾,有个勾,这个勾是什么?一个意思啊?就是说这个勾如果勾上,那么你下一次再创建 新的项目的时候,他就会默认显示你上一次创建的这个项目的路径啊,如果没勾上,那就反正就就不显示了,就是会显示成这种东西吧,对吧?那么我们这个勾起 其实这个地方也不用管他啊,不用,不用管,那么我们比如说 test 啊,就测试啊,我们的这样的一个程序啊, 好,接下去我们这个这个程序的路径,比如说我们把它创建到我们的桌面上啊,桌面上我们创建一个,桌面上我们新建一个啊,这个 ljy 吧啊, ljy 里面这个文件夹里面,我们待会会有一个 test 的这样的一个程序,对吧?项目文件啊,我们现在点击下一步, 那下一步的时候我们就这个地方,因为,呃,我们 q t 在安装的时候是这样的,我们这里面其实就像有一个呃,就像拍摄一样要安装它的解释器,对不对?那么 q t 的话呢,这个地方其实安装的是 q t 的,叫叫做变异器 啊,变异器,那么这个,嗯,变异器是什么呢?就叫做这个啊, mgy, 我们安装的是这个,当然变异器还有其 其他的啊,还有还有其他的,那么这个编辑器的话呢,其实就是 c 家家的编辑器一样的啊,其实就是把我们的 cpp 文件头文件这些东西组织起来,把它编辑成 什么点欧文件啊,等等啊,点欧或者这种啊,像这种这种编意过去的啊,是比较底层的 点或者点 so 或者这这种类似于这种文件啊,那么我们可以看一下啊,变异过去的这个其中的一个,比如说我这个地方,我这个项目不是已经变异过了吗?我这个项目现在是在呃,我们现在直接给他打开啊,打开一个给大家看一下,打开一个看一下,我变异过去的, 让他讲到了这个变异啊,那么变异的路径的话,我们要自己要指定,那比如说我们我这个地方默认会指定 一个路径啊,变异在这里啊,那么这个地方是一个第八个,第八个里面就是我们变异的这个程序,你看这些都是都是点 o 文件,对不对?点 o 的点 o 的啊,那这个点 cpp 里面是你看不到我们的原代码的,都是一些呃,无用的代码 啊,看到的,那么我们就是点欧的这个文件啊,基本上都是点欧的,像这种文件有什么好处啊? 我们知道我们现在很多的拍摄语言开发完成啊, c 语言开啊,是就是什么 c 下载语言加委员,这些开发完成的时候都会有对应的一个编意完成的一个文件,对不对?那些文件很多文件都是可以被反编译的,而且你就, 哎,如果说你没有做好正确的压加壳的话呢?你的原代码程序是很容易被别人通过逆向程序来盗取的啊,那么而我们的这个地方 用 c 语言啊,或者 c 家家语言开发出来的编意完成之后的这些程序是很难背 反反反向工程的,逆向工程的,而且逆向工程出来的这些代码基本上是属于乱码啊,基本上看不到的啊,基本上看不到的,而且因为他这个地方编一下去就比较底层了, 就比较底层了,很底层了啊,所以说,呃,这个,这个是一个好处,另外一个呢,就是我们使用这个 qt 来开发的,也就是他其实是一个 c 加加与对不对 c 加加的一个基础,所以说他的这个程序运行的效率应该来说是 目前我们可以说是最高的啊,非常非常高啊,非常非常高,那再运行再高一点,就是我们用汇编开发出来的,但一般来说不会有人用汇编去做一个这种程序的 啊,你这工作量实在实在太大了,实在是太大了啊,所以大到你无法想象,对吧?更加不会有人用意令去写这种程序,是不是啊?所以那么 基本上我们这种程序最为底层的就直接就是 c 原 c 家家来开发他,他的这个速度是非常非常快,包括我们各种服务器 啊,各种服务器开发的啊,都都是使用这个。那么我们现在,呃,即使这个 qq 啊, qq 的话呢,他绝大多数一开始的时候当然是使用 c 语言,对吧?后面的话呢,也融入了一些什么? c 下巴, c 加,呃,包括一些其他的 一些东西啊,都会融入起来,也也有融入进来,但是他还是绝大多数还是使用这个新家家园啊这种在开发,那么这样的话呢,他的运行成效率是非常相当的高啊, 是相当的高啊,那么我们现在的话呢,直接新建吧, 到这里新建啊,重新新建点一下,嗯,快的,那这里面我已经解释过了,对吧?创建工程啊, s test。 好,我们选择一下桌面上的这个 lgy 有这一块啊,那么这里面的话呢?好,这个地方这样就好了,选择好了这个文件夹,那么这个地方我们默认是勾选的,那么这这其实就是个编辑器啊,大家了解到一个就是一个编辑器啊, 默认就勾选了一个变异器。好,那么我们接下去进行下一步。那这个变异器的变异器完了之后呢,他有个变异的路径啊,比如说他这个地方有三个,三种模式,我们任何的一个,比如说我们的程序,一般来说呢,就是在开发的, 我们一般都会使用就是第八个模式啊,就相当于是他的那第八个模式的话呢,我们就是程序运行的效率相对来说要低一点啊,那么雷厉斯模式的话呢,要更高 啊,愿意投入生产的时候,我们一般来说是雷利斯模式啊,啊,那么这个就是像 pro profile, 就是项目一些文件,对吧?其他的一些文件,那么相当于是工程文件一样的,对不对 啊?那么这个地方的话呢,呃,我们就让他这两个都一起变异。好啊,反正都让他一起变异,都可以变异,那么这个路径变异的路径也可以去选 啊,路径也可以去选。那么这个边一的路径的话呢,我们这在 qt 五当中啊,跟 qt 四当中还是有一点不同啊,不同在哪里呢?不同在于,呃,他的这一个程序啊,不能放在呃,跟我们的原程序不能放在同一个目录下 啊,啊,不然的话他变异的时候会爆错啊。这个地方给大家要注意一下啊,不要放在圆程序的目录下啊,就可以可以放在跟圆程序的同级, 比如说我们待会这里有个 test, 就放到他的同级啊,当然他自动会生成一个同级的,只不过他的名称会比较长,比如的被被被被那个变异过的一个桌面应用程序,对吧?好,那么我们点击下一步,下一步之后我们这里面有三个选项,非常非常的重要,你要注意啊, 看到三个想象吗?看到了吧?那么这里面最底层的是哪一个窗口?就这个 q v, 这个是最为底层,就是一个窗口用程序,那么他是 最里最最底层的啊,最最底层的,那么他的上一层,他的在在后面几层,比如说这是一个呆了的,对不对?呆了的其实也是他的, 他要形成一个 dialog 之前,他首先必须是一个 wedges 啊, wedges, 那么同样的 q men window 也是一样的,想要有个 qmen window 之前还是要必须要有个 q vjx。 那么这两个的一个好处是什么呢?如果说我们 如果这三这三个是有区别的,你再记下来啊。如果说我们想要开发这个像我刚刚的这个地方,刚刚的这个东西一既要有上面的一个菜单导航条, 对吧?菜单栏又要有旁边的,比如说像一些浮动栏,浮动栏就像我们的一些开发工具旁边不是有一个刀刀, 这个叫做道口,道口就像一个浮动窗口一样,浮动窗口一样啊,我们开发工具上面一个是浮动窗口啊,那么,呃, 右岸有我们的这个窗体中心位置主窗体,就像我刚刚展示的不是有左侧的一个菜单,上侧的一个,左侧一个动卡,其实是一个动卡 列出来的浮动窗体,然后上面的话呢是一个菜单栏,对不对?然后呢?中间中间还不是有个位置吗?采集数据什么的,对不对啊?这样如果是这样的一个东西,那么我们开发的时候就使用 qq 门 window 啊,那么接下去的话呢,我们呃如果说是采用的是这个 q 带了的话呢,我们使用的是什么呢?他就是就像我们那个那个那个 a 八那个东西,那个上面我们在展示的时候其实是默认是没有这个叫做什么? 没有菜单上面的一体一个一个菜单选项的,是没有菜单选项的,那么也是呃,我们到时候的话呢,也是需要把界面给隐藏起来的,也就是这个带了个的话,我们其实没有放大缩小啊,他只有一个叉叉, 而我们这个坤妹妹的话呢,我们就像这种程序一样,可以有这个最大窗口,小窗口,对吧?像这种还有个叉叉,对吧?带了个我们就直接是一个叉叉 这个厂家啊,所以我们很多的在我们的这个我们大家注意啊,我们在开发那个天路市程序的时候呢,我们其实是一个个窗梯,然后呢我们其实只需要用一个带就可以了 啊,只需要一个这个这个叉叉就可以了,而且我们要把这个最外层的这个东西要给他隐藏起来,隐藏起来,因为我们稍写进去的时候不允许让他显示是显示叉叉什么的,对吧? 上线进去的时候还像一个窗体一样弹的内两,肯定是呈现内部的内容,对不对?呈现内部我们制作的内容啊,那么我们这个地方我们就使用这个最为基础的 q v 好,那么新建完成的时候我们会发现在这个新建窗体上面同时生成我刚刚所说的三个文件,第一个文件是点 h 是什么文件?哎?读出来头文件,第二个是什么? cpb 文件是叫做什么文件? 原文件 cpb 其实就是 c plus plus, c 加加,对吧?啊?那么 这个名称我们也可以自己来换过来,比如说我们,比如说第一个名称,我们假设第一个名称叫做后后母也可以,对吧?或者捞军登录 是不是也可以啊?啊?那么我们假设是登录啊?啊,那么这个地方勾选创建界面有什么不同呢?这个我们发现如果勾选的话,下面是不是给他按亮了?一勾选是不是就亮了?没有勾选的情况下,就像 只有原文件头和原文件这种形式界面,需要我们自己在我们的这个 cpb 里面去进行创建, 明白了吗?如果你勾选了,那么就意味着你这界面可以进行可视化开发,因为他这个地方你看到这个文件后面有个点 ui, 对吧?可以进行可视化开发啊,那么我们就可以拖空间,拖空间拖到哪里呢?就拖到这里, 就拖到了这里,明白了吧?就是这样拖到了这个界面上。好,那么我们接下去来看到下一步,下一步啊,下一步之后这个地方版本控 我们是没有用到,版本控制系统没有用到,所以默认就是 no, 如果用到的话就是创建一个,那么所谓的版本控制系统的话,就是相当于我们,呃,我们团队协作开发的时候使用啊。呃,比如说我,我今天我开发了一点零版本,对不对?下一个人我开发了一点一版本, 对吧?那么我下一次再开发的时候,是不是要从版本控制器上面把一点一版本下载下来,我在这最新的技术上面再去进行开发, 对吧?这就是所谓的版本控制啊。那么最后的话呢,他会生成这样的一个目录,下面会生成这些文件, cpp、 点 h、 点 ui, 比我刚刚要多了一个 点余爱,对不对?我刚刚是没有点余爱的啊,那么我们还有就是一个 pipro 啊,这个是个工程文件,就相当于我们未必 一样的啊,工程管理文件啊,那么同样的这个地方还有个 cpp 文件,就是一个原文件,对吧? fm 文件,对不对?只不过我们 vb 当中把那个 fm 跟那个 h 和这个这三个文件都集合在一起了, 这里面是分开的啊,在 c 家, c 家家里面我们开发是属于分开的啊。好,我们点击确定完成,完成之后他就会创建了这样的一个界面,对吧?啊?左侧就会开始创建,而且我们所有的 编码编完了,编完成之后,我们只有经过编意之后,他才能够呈现出新的程序来,如果不编意,他还是老的, 不变异,他还是老的,也就是我们 c 家呀。这种程序的话,开发完成之后,你想要让我们的应用程序更新到最新状态,就必须要将我们的元代码统统的给编一遍,编一遍,然后 就会新生成一个新的应用程序啊。那么我们来看一下这里面,接下去我们创建完成之后,界面上是那样的,在我们看一下文件夹里面,文件夹里面首先是一个项目文件夹,接着是接,接着就是项目文件夹里面的这些文件, 对吧?啊?这些文件那么同时会生成一个点 u 的文件啊,就当前的这个用户,那么这个点 u 的文件的话,往往就是在我们跨平台遗址的时候,我们把这个文件给他删掉啊,然后呢 在相同版本下面,我们跨平台移植的时候,他会自动生成一个新的这个文件啊,这个时候呢他就自动兼容了。所以很多很多相同版本的时候,跨平台移植的时候,我们就会采用这种形式啊,采用这种形式这个文件我们是可以删除的, 没有关系是可以删除的啊,那么我们接下去应该知道这几个文件都是用来干什么的了吧?笔记记好没有 啊?好,那么接下去我们来看一下啊,我们生成之后,这个地方他会默认给我们打开了这个 cpp 的文件,对不对?其实上面还有一个什么点啊?头文件,这个是一个工程文件,对吧?然后这个地方是一个 界面文件,这是一个界面文件,我们双击这个界面文件看一下,你看就是一个床体,对吧?我们可以比如说随便拖一个按钮上面啊,这个就是我的按钮双击进去,比如说是刘啊,刘金玉编程啊,很简单,对吧?啊?我们来看一下啊,那怎么样来浏览呢? 怎么样来浏览呢?直接点击这个就可以了,那么点击这个的时候呢,他同时会给你变异的,如果你单独点击这个程这个构建项目,那么就意味着他就是只是变异,并不运行。这个是一个调试嘛?大的嘛?有个 有个虫子吗?对不对?调试运行啊,那这个地方我们就是一个既编意用运行啊,我们现在编意将运行啊,点击他啊,那么这个是自动要教你保存一下啊,保存 co 啊,保存,那么这个时候呢,他就会看到你,会看到你这里面, 呃,那这个有个构建的一个进入条,对吧?进入条,那么这个时候边边一边输出,我们马上就输出了,你看这个程序就出来了, 你看是不是很简单,很简单啊,那么开发的时候稍微复杂了啊,第一个程序是很简单的啊,第一个程序是很简单的,当我们如果想要设计这个界面的话呢,我们这个地方,比如说想要更改一下他的这个,呃, 一些相关的,那这个这个是属于他的一个这个对象的名称啊。啊?对象的名称,比如说是不能改,比如说想要改他的一个,呃,抬头啊,比如说抬头,抬头就是 啊,假,比如说我们把它改成 q 啊, qq, 假设给他改成 qq 啊,那我们继续运行,他又要重新变异了啊?每次都要会重新变异的 啊,从一变异之后,第二次变异稍微快一点啊,第一次变异比较慢啊,然后这个地方是不是又改成 qq 啦?同样的,我们要知道啊,我们这个 q t 里面在使用的时候啊,所有的这些属性 能够修改的地方,我们都能够通过代码修改,这是不是跟未必是同样一个原理啊?哈,所以你只要有这个编程的思想,很多后面用的时候会发现有点类似,对不对 啊?会有点类似,只不过语言不同啊,那么我们来看一下啊,这个地方他有几种模式。 qq 的这个界面,首先是一个欢迎界面,我们就是新创建项目,对吧?然后这个地方编辑,编辑就是呈现项目 那些项目以及代码,项目以及代码,那这个这个 ui 文件其实是一个什么呢?就是一个参谋文件, 看到了吧?设置定义他的一些,呃,什么宽高啊什么的,对吧?那么设计界面呢?就是我们可视化开发啊,左侧就是一些空间, 对吧?那么这个第八个界面的话呢,就是我们在调试的时候,他会调到这里来啊,会调到这里来,那这个地方还有个叫做项目文件啊,项目文件的话,我们就是这个地方有管理,管理我们的一些很多的一些项目的一些环境啊 等等,这个地方有很多代码控制啊等等啊,呃,项目变异器啊,对吧?有很多啊,或者是你看这个地方,比如说让你是采用什么模式啊?变异出来到底是怎么样子的啊?这个地方默认我们这里是一个第八个,对吧?第八个这个模式啊,然后这个地方还有一些 q make, q make 一般来说就是,呃,让他让让我们这个地方去生成一个啊,你看 q make 什么呢? q make 的是这个东西啊, project, 对吧?这里面有一些相关的配置,像项目相关的配置,把它生成适合于我们当前系统环境的一些文件啊,一些文件,那这个魅可的话就是 真正的变异程序了,对吧?变异程序了啊,那么其他的也不需要管了,我们这边只要明白这些就行了,这个很重要啊,这个这个配置文件很重要啊, 这个项目配置完全很重要。这个地方我们往往采用,比如说我们想要呃类写一个类似于 qq 消息的,对吧?啊,那么我们这个地方就要加入相关于 qq 消息的这个 soke 的的这个库。内裤, 这个内裤,这个内裤就是 c 家家语言里面的这种内裤啊啊,他就给你编一好了,这里面已经有了,你只要把这个内裤给你录进来就可以了,就像拍摄 里面我们就用 pot 抹布库啊。呃, gs 里面的话,就像我们这个 htm 页面上面有个 link 过来,对吧?类似于这种东西啊,类似于这种东西,对吧?那么呃下面的话呢?一些呃配置文件,比如说这个地方,我给大家简简单介绍一个比较常用的啊, 什么什么配置的模板?配置的目标,这个目标的话呢,基本上是属于深层的一些文件啊,深就深层的,你的项目,呃叫什么名字? app 叫什么名字,对吧?我们这里面是 test, 那么我们这个默认编意完成之后是怎么样的呢?大家可以看一下,默认编意完成之后就是在我们同级目录下面, 同级陌路下面啊啊,这就是这个嘛,对吧?刚刚很长的这个名字啊。第八个,这里面点进去看到 txt, 对不对? tst, 那么我们直接可以打开这个 tst 的啊,这里打不了,打开不了,为什么?打开?不 是因为他的环境还不够,我们需要把 qt 基础的这个环境给考进去才能打开,也就说默认情况下我们需要考很多,比如说我这里我给大家写过一个叫做一个一个 tcp 的啊 啊? tcp 的一个程序,用 qt 来写的,有个可爱的,有个骚啊,对吧?啊?我之前之前那个写的时候写的,那么写完之后呢?默认是打不开的,你要把 qt 的那个库下面考考很多这个 dl 这种这种程序,对吧?你所有引用到的东西全部要给他考过来,包括他的基础环境。普兰特啊,这个叫做普兰普兰的风, 把烤过来,烤过来之后你就可以用了啊,就可以单独的去打开了。默认情况下是不能单独打开的啊,不能单独打开的,要,要把这些东西都给烤过来,这这些东西在哪里呢?就是在你的 qt 安装路径下面是有的啊, qt 的安装路径下你要去找啊,那么这个地方我们大家需要的时候,到时候自己到路径下面去找。 好,那么我们再来看到这个地方有一个地方,我刚刚要提一笔啊,看到这里面这个地方有什么不同呢?这个地方 这个是 cpp 文件,是一个原代码文件,对不对啊?我们看到这里面要注意啊,上面是一些包含文件包含,比如说包含了一个头,包含了我们的界面的一些文件操作,对吧?那么我这里要提的是什么呢?这个是一个类名 这个是一个类名,那么呃,这里面的话呢?呃,他是记,他是要继承了一个什么呢?继承了一个 q, 你看这个,这个,这个是冒号,是代表他继承,也就说他基础要拥有的是一个 qv 的人士,他是一个窗体,他只有继承了这个 qvid, 那他才能够被渲染成 这个窗体,他才拥有这个窗体的一些功能啊,要不然是没有的,那么不管这些啊,我们单独的看这一款这个括号,反正我们这个地方我们新建完成一个一个界面的时候,他会自动生成,这不是都是会自动生成的吗?啊?你想要快速入门的话呢,首先要记住的是这一块东西是什么? 这啊,你先不管啊,比如说这个地方是载入你的这上面这个界面吗?对吧?载入这个界面吗?我想告诉你的是,这个地方就是我们之前所讲过的构造函数, 看需要个球构造函数的地方,哎,此处为构造函数的地方,只要我们下一次扭一下这个窗体,这个窗体,我比如说我们要打开多个窗体的,我们只要扭一下一个新的泪,我们新的窗体不就出来了啊,同时第一时间就会加 在构造函数里面的代码构造函数里面,这就我们可以看成是构造函数啊,看成构造函数 就是一个类的构造函数啊。那么如果说我们单独写一个类的话呢,我们其实是他的相同名称的,如果我们单独写 c 加加的时候啊,介绍呢是一个类名,可拉斯 name, 对吧?后面的话呢,是相同的, 跟类名相同的。这个函数的名称作为他的一个构造方法啊,而不是单独用这个 ctrl 加个头了啊,这个语法上面又有点不同,但是大家有这个思想对吧?有了思想之后你才能够后面去做啊,构造函数。 好,接下去我要给大家讲到的,上次给大家提高提到过一个,当一个类被消亡的时候,他知性的是一个什么函数,记得吗?哎, 机构函数,对了,机构函数,上次我说过机构函数用什么符号,是不是用这个这 发?哎,所以说我们以后看到这个符号的时候,那么这里面我们其实就是属于虚构函数啊,虚构函数 处啊,吸购函数数,可以看出看成一个函数的就相当于这这个类我要另一个类的时候就会执行这个部分,当我们这个类被铃木的时候, 或者是我得力的这个类的时候,这个类的扭出来的这个对象的时候,这个对象我要得力特的时候对不对?那么与此同时他会执行西构函数出, 对不对?哎,那么这就是这个类的一个生命周期啊,生命周期。那么关键是 c 加加语言啊,并不会马上执行这个东西啊。 c 加加语言的入口在哪里? 在这里内涵说明白了吗?这是路口,也就说 只能所谓路口有几个,但不能选择啊,只能有一个啊,那么这个地方你要记住啊,你要记住函数程序的路口,函数 路口函数是妹啊,而且且整个应用程序啊只能有一个,否则要报错 只能有一个,不然的话是无法被变异通过的。无法被变异通过我是不是就爆破啊。那么同学们在写这个 q t 的时候啊,后面你会发现即使你会很多的东西, 然后写的时候也发现是各种报错啊,后面报错会报的很刺激啊,你各种认为是可能的,可能正确的都会认为是报错,这是因为我们对语法的一个不熟悉啊,不过,呃这些没有关系,后面慢慢就会习惯了啊。 呃,那么我们今天的话呢?呃,这个课程呢,就给大家讲这一些啊,主要是对一个课程的一个 qt 语言啊,也不能说是语言啊, qt 是一个什么? 不要说错了啊。框架啊,谢佳佳框架的一个入门啊,主要是对他的一个入门,然后呢大家回去把这个框架给装好,写自己的第一个 qt 应用程序。 啊,那就这个吧,托个东西让他出来第一个好不好?我们下一节课再来给大家讲这些代码啊,我们今天这节课就到这里。