- 博客(52)
- 收藏
- 关注
原创 VSCode中 task.json 和 launch.json 的作用和参数解释以及配置教程
tasks.json和两个文件分别对应着 VSCode 对于不同的开发语言所抽象出来的各个共同的开发环节的细粒度控制,前者控制构建环节(其实理论上可以控制任何过程),后者控制运行和调试环节。而且我们很多日用而不自知的许多运行程序的操作背后,其实都是 launch.json 在以不同的形式和同样的原理在起作用。
2024-04-12 23:40:58
3920
原创 Java 中 BitSet 类的用法
注:获取的区间后,索引的编号会改变,比如这里新的 BitSet 的 0 号索引对应的是原来 BitSet 的 4 号索引。有三个和长度相关的 API,分别是 size、cardinal、length。
2024-03-20 20:08:49
692
原创 【设计模式】23种设计模式笔记
这个类具有少量具体的方法,和大量抽象的方法,具体的方法是为外界提供服务的点,具体方法中定义了抽象方法的执行序列。
2024-02-10 20:33:06
1387
原创 【Java面试】数据类型常见面试题
定义:当把一个包装类型赋值给基本类型时,编译器自动取出包装类型其中的基本数据进行赋值;当把一个基本类型赋值给一个包装类型时,编译器自动将其包装成包装类型后再赋值本质:本质体现在字节码上,其实是调用了valueof和value方法,是编译器提供的语法糖。
2024-02-09 15:31:35
646
原创 【Java IO】同步异步和阻塞非阻塞真正的区别!!!
注意:不要混淆这里的阻塞IO和操作系统课里学的学的IO模型,操作系统里面学的IO模型是为了节省CPU资源而设计的,概念位于现在所说的JavaIO模型的下层,对Java程序而言是不可见的,而BIO、NIO、AIO是在操作系统的IO模型的上层又发展出的概念,是Java程序可见可控的。也就是说:阻塞和非阻塞这一对概念是在同步的基础上才有了意义,在异步下进程是“继续执行”而不是“等待”,于是不可能会涉及“以何种姿态等待”的问题,即阻塞和非阻塞这对概念描述的问题。”方式,而非阻塞方式就是操作系统中的“
2024-02-09 14:37:57
555
原创 【Java程序代理与系统代理关系】Java程序代理与系统代理关系优先级及覆盖关系
/新建一个完全默认的HttpClientBuilder//调用build方法完成http客户端的构造。
2024-02-08 15:36:43
406
原创 【开源项目阅读】Java爬虫抓取豆瓣图书信息
关于Java程序内设置的代理与操作系统设置的全局代理的关系,在这篇文章中有更详细的说明。创建一个不使用代理的默认客户端,使用如下代码。该接口代表一个http客户端,实现类可以是。直接运行Main.main方法,启动项目。Element为元素类,或标签类。在本地磁盘上生成三个xml文件。另建项目,把四个源代码文件。自动导入maven依赖。
2024-02-08 15:24:53
1198
原创 【若依】若依框架在本地运行的操作方法,及踩坑记录
是一个Gitee上一个开源的基于SpringBoot开发的轻量级Java快速开发框架,用以快速构建后台管理系统,
2024-02-08 00:07:30
1480
原创 各协议所在层数总结
应用层:DHCP、RIP、BGP、DNS、FTP、POP3、SMTP、HTTP、MIME。网络层:ARP、ICMP、IP、OSPF。链路层:PPP、HDLC、CSMA。传输层:TCP、UDP。
2023-09-28 15:53:48
172
原创 【计组学习笔记】6.总线
1、冯诺依曼计算机系统有五大部件,分别是:运算器、存储器、控制器、输入设备和输出设备。其中典型的冯诺依曼计算机是以运算器为中心的,后来又发展为以存储器为中心,到这里计算机五大部件之间依然是分散连接的,而后又出现了总线连接方式,而总线连接方式内部又分为以CPU为中心或以存储器为中心等等类型。其中数据总线为双向传输,地址总线为由CPU向外单向传输,控制总线在单个控制线上通常是单向传输,但在总体上来看也是双向传输。2、总线按照连接部件不同可以分为三类:片内总线、系统总线或板级总线、通信总线。
2023-07-13 13:38:47
146
原创 visual studio安装时问题“未能下载 Visual Studio安装程序更新。请确保你巳连接到网络,然后重试。”的解决
更新一下dns缓存。
2023-05-28 16:39:38
2213
原创 【示意图】进行系统调用的过程
如果某个鸡贼的用户程序设计者提前破译了某系统调用的地址甚至陷入表的地址,并且在自己的程序中设计一个跳转到该地址的指令,其实是不可行的,因为CPU还没有进入内核态。96为一条陷入指令,当CPU识别到陷入指令时,它会进行一个非常特殊的过程,有别于一般的PC+1和由正在运行的指令指出下一条指令所在的地址,这里发生的是CPU去内存(内核空间)查找一个在系统开机时便确定好的。这里不由陷入指令给出下一次执行的地址的原因是:不管是系统调用函数的位置还是陷入表的位置都是内核空间,CPU想要访问内核空间必须。
2023-03-22 18:51:22
321
原创 【linux】管道pipe(),dup()系统调用
可以将标准输出重定向到4这个位置,若4为某管道的读端,则之后的标准输出都会输出到管道的读端而非屏幕上。
2023-03-20 18:23:08
266
原创 【AcWing 787. 归并排序】
2.快排先处理当前区间,再递归处理子区间;归排先递归处理子区间,再处理当前区间。1.分区间时,快排按照值来分,归排按照下标来分。
2023-03-05 15:37:10
63
原创 【AcWing 802. 区间和】
(3)处理非查询操作,对于每个下标x,将其替换为find[x],比如逻辑上需要对b[x]+=20,应该实际执行b[find[x]]+=20,因为find[x]将大的不正常的x映射到了0——alls.size()-1之间(或者根据find的设计映射到1——alls.size()之间,甚至任何一个长度相等的范围内),如对n个点进行了操作,然后对m个[l,r]区间进行了查询,那么离散化的数据总数就是n+2m个,对这n+2m个数进行去重后的个数就是映射数组需要开的长度大小。1.映射数组的长度如何选择?
2023-03-05 12:24:45
153
原创 【图形学】View矩阵的理解
但是在代码设计过程中,虽然在相机点开始渲染是可行的,但实际上让所有的渲染都在原点完成才更加方便,于是需要想一个办法,使得在原点渲染出的结果等效于在某个特定的相机处渲染的结果,这个办法就是:通过在逻辑上调整相机的位置和角度让相机与原点完全重合,且其三个向量基i’,j’,k’也和i,j,k完全重合,,如下图,O点为世界坐标系原点,i,j,k是向量基;O’点是相机位于的点,i’,j’,k’分别为相机的右侧向量、上侧向量和前侧向量。但是从物理上,内存中根本不存在什么相机实体,所以,我们要做的仅仅只是。
2023-02-25 15:59:51
231
原创 mingw64下动态库和静态库链接的真正区别和用法(详细)
1.本文省略了一些与主题相关性不高的测试过程,比如测试第一个问题,重名问题时,并没有给出显式指明库名的结果,以及第三个问题,编译器靠什么识别一个库时静态库还是动态库问题中,也没有给出加上-static之后的测试结果,另外仅凭文件大小就判断链接了静态库和动态库未免有些草率,这些问题都从某种程度上显得测试的逻辑性不够严密。这里的exe一定链接的是静态库,而且和上一个exe大小完全相同,因此合理推测前一个exe也是链接了静态库,也即:当两种同名库同时存在于同一文件夹,并且使用-l格式参数隐式指出链接库名称时,
2023-01-03 00:13:54
2898
原创 Visual c++函数调用约定的解释(__cdecl,__stdcall,WINAPI等)
调用约定之间的主要区别:1.__cdecl是C和c++程序的默认调用约定。这种调用约定的优点是,它允许使用具有可变数量参数的函数。缺点是它创建了更大的可执行文件。2.__stdcall用于调用Win32 API函数。它不允许函数有可变数量的参数。3.__fastcall尝试将参数放入寄存器中,而不是堆栈中,从而使函数调用更快。4.Thiscall调用约定是不使用变量参数的c++成员函数使用的默认调用约定。
2023-01-01 17:48:28
351
原创 【外部库在win10+vscode下的配置】
今天在win10+vscode下配置CG环境opencv+eigen库时,遇到了一些问题,通过解决这些问题总结出来一些东西,以下内容均不具有官方性,完全来源于经验和总结,仅代表个人理解,如有错误欢迎指正。
2022-11-05 19:02:56
1822
1
原创 【GAMES101】作业2中三角形上下颠倒问题最简单的解决方法
这里是按照三角形相似来推导的,注意这里的z和n的符号必须要是一致的,也就是说要么z和n都看成有正负值的坐标(即使两个负数,除完还是正数)还是绝对值距离(只能取负值)都是可以的,因为只需要保证出来的n/z是一个正数就不会发生坐标反转(即三角形上下颠倒问题)。来约定的,但是在projection矩阵形成过程中的z却始终代入的是一个。注意这里的第三个参数0.1和第四个参数50都表示的是。于是矛盾出现了:前面的调用代码中。n=0.1,f=50显然是按照。
2022-10-30 18:21:41
1015
原创 【计算机图形学CG】虎书第一章——Introduction笔记
即Modeling将图形处理为具有数学规范的计算机可以存储的数据即把Modeling建立好的3D图形(可以是任何的数学描述)变成可以直接显示的二维矩阵(特定的数学描述)计算机动画需要在建模和渲染的基础上进行,但是新增了随时间变化的特性交互设计虚拟现实可视化图像处理3D扫描计算摄影。
2022-10-23 23:52:27
951
原创 【C++】用程序证明井字棋必平局
受到哈佛大学CS50.3 人工智能导论课的启发,写了这个demo,用程序证明了在玩家双方都十分聪明的情况下,井字棋必平局。后续可能会以此为框架探究一些其他棋牌类游戏的必胜法。
2022-10-07 19:37:52
1181
原创 【高数学习笔记】2.一元函数微分学
能求导的前提是连续,导数的定义是基于极限的求导的基本法则基本初等函数的导数公式、四则运算求导法则和复合函数求导法则。其中基本初等函数的导数公式则是根据导数的定义推出来的定理,因此导数的定义非常非常重要,两种定义时等价的,但表达侧重点不同求导的常用技巧反函数求导法则、隐函数求导法、对数求导法、参数方程求导法、分段函数求导法、根据奇偶性和周期性求导数求导又可分为求导数(具体到某一点)和求导函数(求区间上的一般规律),一般情况下无论要求的是导数还是导函数,都可以按照“.........
2022-08-11 01:53:52
910
原创 【高数学习笔记】1.函数、极限、连续
首先要知道,既然0/0和∞/∞型的极限无法直接算出,那么如何破坏这种结构,答案就是:消去造成0或∞的因子,那么这些因子从哪里来?在代入x的值后,各部分的结果无非有三种:有限值A,无限值∞和波动值,也就是说整个式子的极限是许多或有限或无限的部分组合起来的,这时候可以按照下面的方法对其做出基础判断。求极限分为函数求极限和数列求极限,数列求极限的方法对函数是通用的,但是函数求极限中用到的一些方法无法在数列求极限中使用(如洛必达法则和换元思想)以下结论可以在选择题和填空题里直接用,若要在大题中使用,则要用洛必达。.
2022-08-07 21:15:07
1325
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人