- 博客(67)
- 收藏
- 关注
原创 10Linux_文件目录类指令
可能在这个案例中直接使用绝对路径更加快捷简单,但是当我们遇到很深的子目录的时候,返回几个上级目录再搜索肯定比重新输入一遍很深的绝对路径要快,所以我们要掌握这种方法。(重定向符号)将获取到的输入重定向到mydate.txt中(这里会产生覆盖的效果,之前的内容会消失),这样mydate.txt中的内容就改变了。我们先转到tom目录下,然后通过两次返回上一级目录,分别转到home目录和root目录,然后再在root目录里面搜索root目录。
2024-04-03 19:21:15
1367
原创 09Linxu_帮助指令
可以看到下面使我们查询到的关于ls命令的帮助信息,他告诉我们ls的一些用法。可以看到我们以单列形式列出了/root文件夹下的所有文件。注意:因为访问的/root文件夹,因此需要/root权限。它以单列的形式展示文件,这样展示的文件的内容是最详细的。我们可以通过在最后添加文件路径来指定要展示的文件夹。可以列出全部的文件,包括隐藏文件(隐藏文件常常以。(功能描述:获得shell内置命令的帮助信息)案例:查看ls命令的帮助信息。案例:查看cd命令的帮助信息。可以看到和cd有关的命令解释。
2024-03-30 12:29:35
309
原创 07Linux_运行级别
0:关机1:单用户【找回丢失密码】2:多用户没有网络服务3:多用户状态有网络环境(使用最多)4:系统未使用保留给用户5:图形界面(默认)(较多)6:系统重启常用运行级别是3和5,也可以指定默认运行级别,后面演示CentOS7后运行级别说明:在centos7以前,: analogous to runlevel 3(级别3): analogous to runlevel 5(级别5)
2024-03-29 23:56:14
302
原创 06Linux_用户管理
在操作Linux中,如果当前用户的权限不够,可以通过 su - 指令,切换到高权限用户,比如root类似于角色,系统可以对有共性的多个用户进行统一的管理。
2024-03-29 14:09:52
1179
原创 05Linux_用户登录和注销
登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用”su - 用户名”命令来切换成系统管理员身份.可以看到切换到root用户后,权限足够了在提示符下输入logout即可注销用户因为我们之前是从ct用户登录到root用户,当我们注销root用户时也是退到了ct用户,当我们注销ct用户后就直接退出了登录了。运行效果:使用细节logout 注销指令在图形运行级别无效,在 运行级别 3下有效(如图,在Linux系统图形界面的终端中logout。
2024-03-28 23:35:50
504
原创 03Linux_vi vim快速入门
Vi文本编辑器是Linux系统内置的编辑器Vim是vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计代码补完,编译及错误跳转等,方便编程的功能特别丰富,在程序员中被广泛使用。
2024-03-27 13:31:19
404
原创 Linux_shell read读取控制台输入
当指定时间没有输入的话,那么他就将继续执行后面的语句了。我们在之前脚本的基础上增加一个限制时间的选项。
2024-03-26 00:52:53
323
原创 Linux_shell流程控制
案例: 请编写一个shell程序,如果输入的参数,大于等于60,则输出“及格了”,如果小于60,则输出“不及格”案例1:当命令行参数是1时,输出“周一”,是2时,输出“周二”,其他情况输出“other”案例1:打印命令行输入的参数 [这里可以看出$*和$@的区别]案例1:从命令行输入一个数n,统计从1+……注意:条件判断适式中,中括号和条件判断式之间必须有空格。注意:while和 [ 有空格,条件判断式 ]也有空格。案例1:从1加到100的值得输出显示。实现计算从1加到输入的数之和。
2024-03-26 00:52:06
716
原创 Linux_shell条件判断
condition ] && echo OK || echo notok 条件满足,执行后面的语句。案例3 :/root/shcode/aaa.txt 目录中的文件是否存在。[ ] (里面没有内容也要留两个空格) 返回false。-f 文件存在并且是一个常规的文件 file。-d文件存在并是一个目录 directory。-le 小于等于 little equal。-ge 大于等于 great equal。验证(0为true,>1为false)案例1 :"ok”是否等于"ok"-eq 等于 equal。
2024-03-26 00:51:16
448
原创 Linux_shell变量
Linux Shell中的变量分为:系统变量和用户自定义变量系统变量: $HOME、$PWD、$SHELL、$USER等等,比如 :echo $HOME等等/root显示当前shell中所有变量: set定义变量:变量名=值变量名和值之间的等号之间不能有空格unset变量readonly变量,注意:不能unset变量名称可以由字母、数字和下划线组成,但是不能以数字开头。如5A=200(X)等号两侧不能有空格变量名称一般习惯为大写(遵守即可)
2024-03-26 00:49:07
1255
原创 Linux_shell编程快速入门
shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序。用户可以用Shell来启动、挂起、停止甚至是编写一些程序。说明:不用赋予脚本+x权限,直接执行即可。脚本的+x权限,再执行脚本。
2024-03-26 00:47:49
326
原创 02远程登录Linux并传输文件
说明:Xshell是目前最好的远程登录到Linux操作的软件,流畅的速度并且完美解决的中文乱码的问题,是程序员首选的软件。Xshell是强大的安全终端模拟软件,它支持SSH1,SSH2,以及Microsoft Windows平台的TELNET协议。Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。Xftp7是一个基于Windows平台的功能强大的SFTP、FTP文件传输软件。
2024-02-26 16:13:28
1234
1
原创 01Linux结构目录
Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。深刻理解linux树状文件目录是非常重要的,windows中的文件是可以随意命名的,但是linux中的文件名和内容都不能随意更改记住一句经典的话:在Linux世界里,一切皆文件(!!
2024-02-26 16:11:46
746
原创 第六章——Unity中的基础光照
虽然标准光照模型仅仅是一个经验模型,也就是说,它并不完全符合真实世界中的光照现象。但由于它的易用性、计算速度和得到的效果都比较好,因此仍然被广泛使用。而也是由于它的广泛使用性,这种标准光照模型有很多不同的叫法。例如,一些资料中称它为Phong光照模型,因为裴祥风(Bui Tuong Phong)首先提出了使用漫反射和高光反射的和来对反射光照进行建模的基本思想,并且提出了基于经验的计算高光反射的方法(用于计算漫反射光照的兰伯特模型在那时已经被提出了)。
2024-01-15 15:52:03
1332
原创 第五章——开始Unity学习之旅
实际上,这些是CG/HLSL 提供的语义(semantics)。读者可以在微软的关于DirectX的文档().aspx#VS)中找到关于语义的详细说明页面。上面提到的语义绝大部分用于描述标量或矢量类型的变量,例如 fixed2、float、float4、fixed4等。关于何时使用哪种变量类型,我们会在5.7.1节给出一些建议。但需要注意的是,一个语义可以使用的寄存器只能处理4个浮点值(float)。因此,如果我们想要定义矩阵类型,如float3×4、float4×4 等变量就需要使用更多的空间。
2024-01-15 15:35:23
1009
原创 Qt成功打包项目教程
以release的方式进行构建运行,这样生成的.exe文件(项目发布需要)大小会小很多,而Debug方式下产生的.exe文件带有许多调试信息,文件比较大。我们在开始界面搜索Qt,找到和你的编辑器对应的终端(如果不清楚,可以进如Qt,将鼠标放在构建方式上,查看你的Kit),然后右键选择以管理员方式运行。我们直接点击运行,可以看到报错,这需要我们的电脑中有Qt相关的环境,并且你发给别人也需要别人有Qt环境才能打开,因此,我们不推荐这种方式。在生成的文件夹中的release文件夹中,包含了Qt项目的exe程序。
2024-01-15 15:28:35
3371
原创 Qt游戏制作-翻金币案例
因为Qt中并没有设置按下和弹起两种状态的控件,因此我们只有自定义一个按钮,并在Qt中创建好创建好之后,我们要修改其继承的类,把QWidget改为(修改三处)中的我们需要选择关卡场景释放一个信号,然后由主场景来监听,是否需要返回到主场景。首先我们先在中自定义一个信号signals://写一个自定义信号,告诉主场景 点击了返回然后我们在返回按键的信号和槽函数中,发送这个信号——emit();,同样的我们可以选择延时发送信号。//点击返回。
2024-01-15 13:58:34
1073
原创 第四章、学习Shader所需的数学基础
1.判断下面矩阵的乘法是否存在。如果存在,计算它们的乘积。2、判断下面的矩阵是否是正交矩阵3.给定一个矢量(3,2,6),分别把它当成行矩阵和列矩阵与下面的矩阵相乘。考虑两种情况下得到的矢量结果是否一样。如果不一样,考虑如何得到相同的结果。通过线性代数的知识,我们知道线性变换可以由矩阵表示。而线性变换包括缩放,旋转,错切,镜像和正交投影等,但不包括平移变换。为了能用矩阵描述平移变换,我们引入齐次坐标。
2023-12-25 00:23:24
1150
原创 第三章、Unity Shader基础
Unity中需要配合使用材质(Material)和Unity Shader才能达到需要的效果。常见的流程:创建一个材质创建一个Unity Shader,并把它赋给上一步中创建的材质把材质赋给要渲染的对象在材质面板中调整Unity Shader的属性Unity Shader和材质。首先创建需要的Unity Shader和材质,然后把Unity Shader赋给材质,并在材质面板上调整属性(如使用的纹理、漫反射系数等)。最后,将材质赋给相应的模型来查看最终的渲染效果。
2023-12-25 00:02:08
1489
原创 渲染管线概述
之间讲过的视锥剔除是针对于整个的模型,而裁剪操作是针对于微小的三角面对于裁剪操作我们并不在视锥体进行,那样的话太难了,我们从前面得到的规则的裁剪空间中进行判断,这样会简单很多至于混合的模式是可以控制的。常见的有半透明混合(AlphaBlend)其中白色部分是不可以改变的,Source Color是当前渲染片元的颜色值, Dest Color是对应位置颜色缓冲区里的已存的颜色值。
2023-12-23 21:32:19
1423
原创 第二章、渲染流水线
渲染流水线的目的:由一个三维场景出发、生成(或者说渲染) 一张二维图像。这个工作通常是由CPU和GPU共同完成的,它的输入是一个虚拟摄像机、一些光源、一些Shader以及纹理等。渲染流程的概念阶段应用阶段(Application Stage)几何阶段(Geometry Stage)和光栅化阶段(Rasterizer Stage)。注意这里是概念阶段,每个概念阶段包含了子流水线阶段。它是为了给一个渲染流程进行基本的功能划分而提出来的。
2023-12-23 21:29:39
1209
原创 1、操作系统概述
操作系统:实际上是一套软件,负责使运行程序变得容易(甚至允许你似乎同时运行许多程序),允许共享内存的程序,使程序能够与设备交互,以及类似的功能。
2023-12-23 21:17:35
480
原创 19、Qfile文件读写操作
除了得到文件的内容外,我们还希望查看文件的具体信息,于是我们可以通过。在读取utf-8的基础上,我们添加一个编码格式类。可以看到添加成功了(这是我们运行了多次的缘故)可以看到我们成功打开了gbk格式的文件。按钮,进入文件对话框选择文件,上面的。然后我们将写入文本的数组设置为gbk。我们简单的对文件末加上一些文字。框保存文件路径,下面的。
2023-12-23 11:22:31
1006
原创 18、Qt绘图设备
Qt一共提供了四个这样的类,分别是QPixmap、QBitmap、QImage和 QPicture。其中,注意:在使用不同的额绘图设备时,需要引用对应的头文件。
2023-12-22 15:52:06
520
原创 17、QtPainter绘图
Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制。整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类。QPainter用来执行绘制的操作;是一个二维空间的抽象,这个二维空间允许QPainter在其上面进行绘制,也就是QPainter工作的空间;提供了画笔(QPainter)在不同的设备上进行绘制的统一的接口。QPaintEngine类应用于QPainter和QPaintDevice之间,通常对开发人员是透明的。
2023-12-22 15:51:10
1554
原创 9、Qt对话框
Qt 支持模态对话框和非模态对话框。使用QDialog::exec()实现应用程序级别的模态对话框使用QDialog::open()实现窗口级别的模态对话框使用QDialog::show()实现非模态对话框。
2023-12-21 21:32:00
1060
原创 8、Qt导入资源文件
Qt 资源系统是一个跨平台的资源机制,用于将程序运行时所需要的资源以二进制的形式存储于可执行文件内部。如果你的程序需要加载特定的资源(图标、文本翻译等),那么,将其放置在资源文件中,就再也不需要担心这些文件的丢失。也就是说,如果你将资源以资源文件形式存储,它是会编译到可执行文件内部。
2023-12-21 19:29:32
484
原创 7、带菜单栏的窗口(QMainWindow)
QMainWindow是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件()、一个状态栏(status bar)及一个中心部件(),是许多应用程序的基础,如文本编辑器,图片编辑器等。注意:在添加对应栏的时候需要在cpp文件中添加对应的头文件创建菜单栏——menuBar();将菜单栏放入窗口——创建菜单——addMenu();创建菜单项——添加分割符号——
2023-12-21 14:27:33
385
原创 6、信号和槽的基本使用和拓展
使用connect()可以让我们连接系统提供的信号和槽。但是,Qt 的信号槽机制并不仅仅是使用系统提供的那部分,还会允许我们自己设计自己的信号和槽。首先新建一个Teacher类,在头文件中声明自定义信号——饿了hungrysignals://自定义信号 写道signals下//返回值是 void,只需要声明,不需要实现//可以有参数,可以发生重载然后新建一个Student类,在头文件中声明槽函数——请客treat。
2023-12-21 01:59:34
1080
原创 5、Qt中的坐标系统
感兴趣的了解即可,不懂也不必深究,只记住Qt左上角为原点(0,0)就行3D渲染数学基础(1)坐标系_三维坐标系有哪些-优快云博客3D数学基础(一) | 坐标系-优快云博客。
2023-12-14 16:46:46
281
1
原创 4、对象模型(对象树)
如上图所示,在Qt中,一切对象都是以对象树的形式存在的。QObject是所有对象的祖先,由它派生出了很多其他的类。如QWidgetQDialog等。其中QWidget是所有在屏幕上显示的组件的父类,如按键等。对于构造在创建对象时,我们可以提供一个父对象,我们创建的对象会被自动添加到父类对象的children中。对于构造函数,先构造父类,再构造子类如果先构造子类,再构造父类,那么在析构的时候,由于析构父类的时候也会析构他的子类,那么子类将会被析构两次,导致程序崩溃。
2023-12-14 16:27:36
71
原创 3、按钮控件常用API
上面代码中,一个按钮其实就是一个QPushButton类下的对象,如果只是创建出对象,是无法显示到窗口中的,所以我们需要依赖一个父窗口,也就是指定一个父亲利用。对于窗口而言,我们可以修改左上角窗口的标题setWindowTitle,重新指定窗口大小:resize,或者设置固定的窗口大小setFixedSize;只用于修饰只有一个参数的构造函数,用于表明改构造函数是显式的(禁止隐式转换和自动类型转换),和它相对的是。根据之前我们创建按钮的方法,我们就能实例化自己实现的按钮了。的源文件,用于写类的实现。
2023-12-14 15:47:16
121
原创 2、创建第一个Qt程序
打开Qt Creator 界面选择 New Project或者选择菜单栏 【文件】-【新建文件或项目】菜单项弹出New Project对话框,选择Qt Widgets Application,选择【Choose】按钮,弹出如下对话框设置项目名称和路径,按照向导进行下一步,新手选择qmake即可,点击下一步向导会默认添加一个继承自CMainWindow的类,可以在此修改类的名字和基类。
2023-12-14 15:43:12
261
原创 1、Qt的介绍
1.1什么是QtQt是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易扩展,并且允许真正的组件编程。1.2Qt的发展史1991年 Qt最早由奇趣科技开发1996年 进入商业领域,它也是目前流行的Linux桌面环境KDE的基础2008年 奇趣科技被诺基亚公司收购,Qt称为诺基亚旗下的编程语言2012年Qt又被Digia公司收购。
2023-12-14 15:42:24
125
原创 C++提高编程5:STL-常用算法
算法主要是由头文件<numeric>组成。是所有STL头文件中最大的一个,范围涉及到比较、 交换、查找、遍历操作、复制、修改等等<numeric>体积很小,只包括几个在序列上面进行简单数学运算的模板函数定义了一些模板类,用以声明函数对象。
2023-12-13 13:02:20
60
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人