- 博客(71)
- 收藏
- 关注
原创 BoostSearcher搜索引擎项目
宏观图:宏观图解释:做法是先获取数据源(html网页),如何获取?答:从Boost官网下载文档HTML网页。对HTML网页进行解析和提取,如何解析和提取?答:解析网页HTML,提取出title、摘要、url。组成一个个结构体,构成关键字的查找依据。建立正排和倒排索引?什么是正排索引?什么是倒排索引?答:正排索引如下(文档id和正排文档的映射关系)。文档id正排文档(DocInfo)1正排文档12正排文档23正排文档34正排文档4关键字。
2023-02-25 08:42:33
1330
原创 centos7 scl工具集升级gcc和g++(简易版)
解决:想要永久有效,需要将启动命令写入~/.bash_profile文件中。注意:启动更新后的版本只能在当前会话有效,重新登陆会失效。2、升级gcc、g++3、启动更新后的版本。
2023-01-16 10:46:12
943
原创 <Linux系统复习>信号
1、什么是信号2、查看信号列表3、信号捕捉4、信号产生的5种方式5、介绍CoreDump6、信号处理的方式7、如何理解信号产生到处理的过程8、sigpending、sigprocmask、sigaction函数的使用9、信号处理的时机10、SIGCHLD信号11、可重入函数
2022-11-26 22:21:11
612
原创 腾讯云服务器后台重装后需要配置的一些东西
10、sudo yum install -y libstdc++-static(安装c++静态库)5、sudo yum install -y epel-release (准官方的扩展源)9、sudo yum install -y glibc-static(安装c静态库)8、sudo yum install -y tree(安装查看目录结构的命令)6、ls /etc/yum.repos.d (查看安装了的yum源)7、sudo yum install -y sl(安装小火车命令)
2022-11-18 15:53:05
518
原创 vscode远程连接服务器失败的问题
known-hosts文件路径会在vscode连接报错信息里找到,这张截图不知怎么的找不到了。这个隐藏目录在你要登录用户的主目录下,这里我用xshell登录服务器。2、在腾讯云后台重装服务器系统后,远程连接无法建立管道,连接失败。解决方法:删除服务器端的.vscodeserver这个隐藏目录。解决:删除客户端那头的known-hosts文件。所在路径:在c盘/用户/用户名/.ssh。删除之后,重新连接即可成功!目前只遇到了以下两个问题。
2022-11-17 18:21:52
6620
7
原创 <Linux系统复习>共享内存
1、一段用来进程通信的内核缓冲区2、图解:3、系统可以创建多个共享内存,如何确保两个进程看到同一个共享内存?通过相同的key可以看到同一个共享内存,这个key是用来创建或获取共享内存的,用户可以传相同的key给两个进程,进程一用来创建一个全新的共享内存,进程二则用来获取进程一创建的共享内存,这样进程一和进程二就能看到相同的进程。4、两个进程要使用共享内存需要先做好以下几件事①创建/获取共享内存②关联共享内存:即地址空间和物理内存建立映射关系③去关联:去映射关系。
2022-11-04 17:10:29
758
17
原创 <Linux系统复习>管道
1、管道本质就是一段由操作系统维护的内核级别的缓冲区,简单点就是一段内存,只不过这段内存是为进程通信而存在的。2、进程间通信的成本是比较高的,因为进程的独立性,当父子之间要发生写数据时,常常发生写实拷贝,因而需要操作系统专门提供一段特殊的缓冲区,让进程之间通信。3、为什么需要进程通信?因为常常需要进程之间交互数据,协同完成任务。4、管道分为两种:匿名管道和命名管道。
2022-11-02 11:19:04
313
9
原创 <Linux系统复习>动静态库
1、动静态库的制作与使用2、动静态库的使用3、动静态库的理解4、安装两个好玩的库(ncurses、boost)
2022-10-31 07:37:02
461
11
原创 <Linux系统复习>文件系统的理解
1、磁盘的物理结构2、磁盘文件如何存储?3、目录的理解4、创建一个文件做了什么?5、删除一个文件做了什么?6、软连接7、硬链接。
2022-10-30 15:41:48
669
12
原创 <Linux系统复习>文件描述符
1、进程和打开文件的关系2、简单复习c语言文件操作3、介绍系统调用:open、clos、write、read4、理解文件描述符5、文件描述符分配规则6、理解stdin、stdout、stderr与fd的关系7、理解linux下一切皆文件8、理解重定向的本质9、理解stdin和stdout的区别10、理解缓冲区
2022-10-29 11:31:10
1592
8
原创 <Linux系统复习>进程概念
1、冯诺依曼体系结构2、进程的概念3、getpid和getppid4、查看进程5、命令进程的父进程6、用fork创建子进程。
2022-10-14 15:04:03
649
原创 <Linux复习>git基本使用
1、git add、git commit、git push、git clone、git pull、git log2、.gitignore文件
2022-09-28 22:48:29
1189
原创 <Linux复习>gdb调试工具
l 行号:显示源代码,接着上次的位置往下列,每次列10行(list)使用命令:gcc test.c -o mytest_g -g。c:从一个断点运行到第二个断点(continue)此时:mytest_g为调试版本的可执行程序。finish:执行到当前函数返回,就停下来。b 行号/函数名:打断点(break)d 断点编号:取消断点(delete)r:运行程序到第一个断点结束(run)l 函数名:列出某个函数的源代码。display 变量名:常显示。until 行号:运行到指定行。s:逐语句(step)
2022-09-27 16:50:53
512
原创 <Linux复习>基本指令及重要热键
1、基本指令:zip/unzip、tar、bc、uname、history、su2、基础热键:ctrl+r、ctrl+d、ctrl+c、tab。
2022-09-25 18:51:20
2861
原创 <Linux复习>基础指令下
复习基本指令:man、cp、mv、cat、tac、more、less、head、tail、date、cal、find、grep介绍:输入重定向、输出重定向、追加重定向。
2022-09-25 12:17:26
385
原创 <Linux复习> 基础指令上
1、创建与删除用户2、绝对路径与相对路径3、部分基础指令(ls、pwd、cd、touch、mkdir、rmdir、rm)
2022-09-22 21:23:54
450
1
原创 《C++》继承
1、继承基础介绍2、基类与派生类对象赋值转换3、隐藏4、派生类的默认成员函数5、继承与友元6、继承与静态成员7、菱形继承8、继承与组合。
2022-07-24 21:40:04
456
4
原创 《STL仿函数》priority_queue模拟实现
翻译priority_queue就是优先级队列,本质其实就是一个堆,不传仿函数的情况下,默认是个大堆。
2022-07-22 11:19:32
379
3
原创 《STL适配器》stack和queue
适配器是一种设计模式(设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结),该种模式是将一个类的接口转换成客户希望的另外一个接口。简单来说,适配器其实就是我们写代码时的一个好的设计方式。比如我们要写一个栈,我们可以直接用vector或者list做底层来实现。三、实现stack{public{}{assert(!empty());}{}{}{}privateCon_c;};...
2022-07-22 10:07:43
244
1
原创 《STL容器篇》-List模拟实现(三种反向迭代器)
是因为如果T为结构,它里面有int_a和int_b,我们可以*it._a和*it._b来访问T,但我们有的时候就想直接it->_a和it->_b来访问T的两个元素,因此我们可以重载operator->,本质上我们应该这样使用it->->_a,it->->_b,但编译器会优化,我们只需要it->_a、it->_b即可。我们很容易知道的是,反向迭代器就是正向迭代器的一层封装,用正向迭代器就可以适配出反向迭代器,这里我设计出了一个反向迭代器的模板,只要传任何容器的正向迭代器就能生成对应的反向迭代器。...
2022-07-21 23:20:17
248
3
原创 《STL容器篇》-Vector模拟实现
本篇不为造更好的轮子,只为让我们了解一点底层实现,更好的掌握vector的使用,上述接口有许多和string篇的相似,因此,这里只挑选部分值得我们注意的点进行解析。
2022-07-21 21:54:54
215
1
原创 《STL容器篇》-string模拟实现
关于实现细节,很多地方代码读起来还是比较轻松的,这里只挑选了部分需要注意的地方进行解析,后续的stl容器会依次介绍vector、list、deque、map、set、unorderedmap、unorderedset尽请期待。
2022-07-20 09:56:01
231
1
原创 《C++》动态内存管理
new是一个操作符,用法1、new+类型,返回的是对应类型的指针。2、new+类型[size],返回的是这块空间的首元素的地址。咋一看,new和malloc好像没什么区别,都不会对内置类型进行初始化,但遇到自定义的类型,new可比malloc好多了。可以看出,new申请空间的同时会调用构造函数进行初始化,而malloc只是开空间。还有就是new申请空间失败时会抛异常,而malloc则返回的是null。具体什么是异常,后面会出对应的章节进行介绍。...
2022-07-18 16:17:14
715
2
原创 《C++初阶之路》类和对象(中)
六个默认成员函数、构造函数、析构函数、拷贝构造、赋值运算符重载、const修饰成员函数、实现一个日期类、取地址及const取地址运算符重载、
2022-05-03 09:02:58
335
19
原创 《C++初阶之路》类和对象(上)
什么是类?类的定义类的访问限定符struct和class的区别是什么?什么是对象?类的大小如何计算this指针
2022-05-01 18:37:52
1320
23
基于双链表的直接插入排序、直接选择排序、冒泡排序
2022-10-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人