default 开发者日志

时间轴样式

2022-11-21 1.0

本博客网站开服,作者:yhl2333
学校:北京航空航天大学
邮箱:1652966670@qq.com

2022-11-23 1.1 -> 2.0

  好不容易把bug改完了,把功能实现了。

2022-11-23 1.0 -> 1.1

  今天是11月23日,新增了留言新功能,希望大家可以对博客网站提出建设性意见或者有什么想留言的。

2022-11-25 1.1 -> 2.0

  今天是11月25日,本着精益求精的态度,我对博客进行的大幅度的美化与修缮,成功实现了白天黑夜不同的界面显示与特效。这个过程历时整整一天,出现的问题:修改博客文件后在本地 host:4000端口打开的效果和在浏览器中服务器IP地址打开的效果不同,不同之处在于修改的部分没有显示。进过多次调试查证发现是浏览器自己的数据缓存功能,慨叹自己如此伞兵的同时也对浏览器的搜索引擎的检索能力提出质疑。浏览器的数据缓存:浏览器在加载网页之后会将内容缓存到你的设备上,当你再次访问(包括刷新网页)这个网站就会优先显示上一次加载缓存过的结果,而不是默认立即从服务器上更新全部网站内容,不然1GB的流量打开几个图片量大的网页就都没了。这也就导致了网站的开发者修改过服务器上的资源后刷新网址网址会没有任何变化。

2022-11-29 1.1 -> 2.0

  直接润回家!润的前一晚学校🐏了一个,润的当天🐏了一个。(润的后一天也🐏了一个)(再往后一天和我一层的同学也阳了,一层被拉走隔离了。。)
  今天遇到了好多有趣的人,拼车的学姐,开出租的老父亲,做志愿奉献社会的兵哥,每个人都有着我所羡慕并且精彩的生活,
  逢人便讲自己的憨厚懂事的高三儿子的出租车父亲,热情的和我讲述自己的孩子如何努力,如何憨厚可爱,如何高三了还孩子气,讲述的时候发自心底的开心与骄傲像极了我的父亲,虽然我不那么懂事(回家发现俺爹真的把烟戒了,挺开心的)。
  在拼车群里拼了一天的车都没拼到去北京朝阳站的人,第二天拼到了一个林业大学的研一姐,和我一样也是趁着疫情赶紧润回家,老乡所以在一起聊了还算挺多的吧,值得感叹的是我依然还是和异性交谈九级伤残选手,也不太会表达,但单方面也没感到尴尬。
  三四十号转运的人在天寒地冻的大街上冻了一个小时,怨气朝天地上了转运大巴,面对大家的埋怨挖苦,开车的军人哥忍气吞声还疯狂打趣,让车上的气氛缓和了下来,后来知道他是无偿来当志愿者的,理由是想要奉献社会,从早上七点干到晚上十点,很难想象一天中他咽下了多少波分流人员的怨气,令人打心底敬佩,无论如何,给别人多一些容忍与理解吧。
  哈西站下了高铁,走在站里有种恍然若失的感觉,感觉愧疚又无力,不知不觉就泪流满面了。高中写了三年的触景生情,好像到了今天才算真正理解了
  回家后和杭州的姐姐打了会电话,一切安好,希望今年过年的时候能见到吧
  很精彩有趣的一天
  三点半了,睡觉

2022-12-1 1.1 -> 2.0

  隔离第二天。已经感觉得到自己精神层面出了些状况,可能是真的有太多太多想找人说说吧,可大家都在忙,也不去打扰了哈哈。
  感觉这么多年自己就一直都在念书,大部分还都是无用功。感觉别人的生活都好精彩啊,好想走出去看看啊。引用彭哥的一句话“没有生活质量慢慢就抑郁了呗”,但比起身边的人我已经算是不错的了。北京看样子要解封了,脸都不要了。
  好久没更技术篇了,明天更一篇C++出来。
  今天属实是没啥正能量了,,
  都别跟自己过不去吧,
  加油吧大伙

2022-12-5 2.0 -> 2.1

  开放了评论区,用的必来力评论系统网站,大家可以放心评论不用担心号被盗哈。。。号被盗了我全责好吧

2022-12-9 2.0 -> 2.1

  ELDEN RING!年度最佳 2022-12-9,出个DLC直接攒钱买显卡去实验室玩。

2022-12-26 2.0 -> 2.1

  考研结束了,兄弟们都回来了,就算家不在肇东,大家也都第一站回到了肇东。对我来说,可算有人陪着说话打游戏了,不管考得怎么样,都先把一切都放下吧,休养一段时间。

2022-1-1 2.0 -> 2.1

  欢度元旦,给朋友们都发了贺词,鸣谢王哥凌晨帮助我度过情感难关解开心结。希望新一年能够认识到很多志趣相投的人,多交几个朋友。多学一些知识与社会技能,提高自己的生活质量!新年愿望是让自己变得博学谦逊。女朋友等毕业了再说吧。

2022-1-5 2.0 -> 2.1

  一根藤2023年度首聚。和大伙一起去了人工湖,看了烟花,打游戏出去住。得知桂花已经找了工作,感觉像是葫芦娃中大哥被妖精抓走了一样,七个人中第一个能早日实现经济自由和生活自由,工作也还不错。看来大家都别来无恙,即使生活充满了挫折也在努力改变自己的人生,接纳自己。

2023-4-12 2.0 -> 2.1

  做毕设的同时,重新更新了博客界面和博客内容。又接了一份毕设,要自己去大兴区出差了。说实话心里很没底。买了挺多设备花了挺多钱,等W教授发劳务买波A卡。目测找工作那年学历贬值加剧,也见识到了实验室的师兄出众的能力,打算从研一开始就锁定研究方向也方便以后找工作,和凯翔交流之后,目前定在了SALM。

2023-5-13 2.0 -> 2.1

  北航国际文化节,效果放在整个大学期间也是相当炸裂的存在,参照以往的校庆真的是好的不能再好了。很有特色,吃了许多风味小吃,和一些外国人合影留了念,裴济的肌肉小哥,漂亮的俄罗斯小姐姐(真的太好看了吧)。集了三十个国家的印章,听了歌舞,简直太满意了。也见识到了金钱与科技的力量,专业相机加修图直接化身专业摄影师。

2023-5-22 2.0 -> 2.1

  规划去西藏第一步,打算租个专业照相机。假期打算把SLAM和深入理解计算机系统看完,书可太厚了。SLAM,Linux使用,深入理解计算机。打算在答辩之后去录一些校园的vlog,也可以去沙河拍拍日出剪个视频发到b站上。看到蔡哥剪的视频很是震撼。因为大学前三年是混过来的,没怎么融入到大学生活中,所以感觉想弥补一下遗憾吧。从去年十月份开始到现在自己也算是没闲着,这学期更是离谱,一个学期更是一点都没闲着,也就放了一周的假期。也抽时间把博客重新优化了一下,学了下怎么写Markdown文本。之后就会一直更新了。

2023-5-29 2.0 -> 2.1

  本科结题答辩结束,晚上八点慕名去了国贸CBD。我本以为三里屯已算的上是极限,奈何国贸这建的是真的更好,肉眼可见的富到流油。不得不慨叹在这里面行走是真的压抑,仿佛像《高老头》中主角第一次踏入巴黎的上流社会一样,我第一次怀念起了家乡的淳朴。国贸商城里尽是些见所未见的奢侈品品牌,几乎全是表啊,珠宝啊,包啊。说起来也可笑,细品隔着橱窗看这些东西的感觉和卖火柴的小女孩隔着橱窗看富人宴饮应该也差不多了。完美诠释了世界在我眼前却又永远遥不可及,有种过街老鼠想要马上逃走的感觉。但想到出没于此的人本质上也不过是普通人,我和室友还是硬生生沿着国贸桥逛完了整个CBD。然而端庄大气的国贸脚下是望不到尽头的老破小,人行路边停满了数不清的996们的电瓶车。现在想起那些进京进沪拼死拼活工作的人就感到也挺五味陈杂的,人各有志吧。

2023-7-3 2.0 -> 2.1

  六月末给自己请了一段长假打算毕业旅行,先是和高中同学去张家界,然后去成都和室友去西藏走318线。我认为我应该往远了走一走,看一看,去看看未知的世界,自己憧憬的地方。虽然花了一万,但我认为很值得。旅行的过程中,我碰到了司机昊哥,没到三十岁,打算到30不结婚就整个中国旅行,抛下家里的压力给自己空间与自由,无法评价,自己认为值得怎样倒都无所谓。碰到一对从事医护行业的新婚夫妇,刚刚结婚,上了八个月的班来休婚假。很幸运遇到他们,不单单是相处的异常快乐与融洽,这次旅行除了旅行本身,还观测到了许多生活层面的东西。相恋七年结婚,挺羡慕的,哎羡慕死了。又有许多自己的爱好,有美好的家庭,除了没有很多自己可支配的时间。他们给我的共同感觉是人在三十岁左右必然会被生活压得喘不过气来,他们一直像兄长一样给我建议,即进入实验室以后我第二次感觉到自己和生活严重脱节了,每每和不同圈子的人接触,我都感觉弗如远甚。这种感觉来自于方方面面,要么完全没有了解过,要么肤浅。这次旅行我学会了如何摄影以及怎样去修图,虽然都是入门级,但也确实成为了爱好,也被许多人称赞拍的好看。总之318绝景太值得了,拍的照片真的好看,听到看到学到了好多东西。
  一个人的毕业旅行还真的挺好的,主要运气好碰到了这么棒的队友。看到一个大师兄刚毕业就领结婚证了,羡慕。另一个大师兄应该也快了,酸上加酸哈哈。关于以后进私企还是国企,我感觉现在反而无所谓了,想要干自己喜欢干的行业,在私企才有可能;想稳定安家买房,国企会更容易,无论以后选择了哪一条路,我都不会对自己有什么怨言。

2023-7-4 2.0 -> 2.1

  拿到了学位证书和毕业证书,也拿到了沈元荣誉学院的荣誉证书和北航校优秀毕业生证书,整理了毕业照,特此纪念。和大师兄还有大师姐合影留念了。想起去年九月进组到现在毕业,大师兄完全做到了大师兄应该做的,包括帮助师弟云云。忽然现在才回过味来大师兄怎么这就这么走了啊,阿民给了我很多帮助与指导,深深记得我无法参加大师兄的送别宴,大师兄在601门口目送我去赶飞机,那次是我们最后一次见面,但也真希望以后还会再见,如果我够强的话说不定还能做个同事。总之祝大师兄一路顺风

2023-9-8 2.0 -> 2.1

  成都和阿拉善出差归来,不得不说成都是我见过最适合人居住的一线城市了,人口结构正确,消费水平正确,经济正确。在阿拉善拍到了各种云延时,扫街街景,大漠的风光,吃的也是更没话说,趁着这期间还又修了一遍《数据结构》和1/3的《操作系统》,也是时候准备回去入学了。我希望学一些本领这句话不单单停留在嘴上说说,成也三年,败也三年。

2023-9-17 2.0 -> 2.1

  今天迪庆师兄请吃饭,我也和展平哥深入探讨了一些关于未来规划上的事情,不得不说展平哥确实综合实力强悍,无论是学术还是社交上,典型多线程互不影响,很清楚什么时候该做什么,眼界比我不知道开阔了多少。忽然感觉好像还可以继续出国读博,需要哪些必要条件,如何去读,去哪读。说实话我很想要博士这个Title,一是想去搞一下真正的学术,发论文做研究,另一个是不想给这么多年的学业草草划上一个句号,因为一切都是如此的来之不易,人也,命也,运也;机会存在就要去努力抓住。

2023-5-23 2.0 -> 2.1

  伟大,无需多言。今天我自己终于把厕所毒瘤收拾好了,刚入学的时候就差点不敢进卫生间,上次把洗浴的地方收拾了一下,我被恶心的不行,险些直接吐了,收拾完洗浴的地方也就把马桶区搁置掉了,要是当时有个朋友支持我一下我可能马上就把马桶区收拾掉了吧。过了一周我也真的忍不了了,不想面对的总要去面对,把剩下的洁厕神器用掉了,终于干净了。仅凭言语真的不能表达我心情的千万分之一,没见过这么脏的地方。总之,伟大,无需多言。

2023-5-23 2.0 -> 2.1

  vscode的环境变量和系统环境变量不一致:在用户的setting.json中加入下面这行:
  ”terminal.integrated.persistentSessionReviveProcess”: “never”
编译boost库,安装到指定位置文件夹中只有include(头文件夹)和lib(静态库文件夹)。用哪个编译器编译出来以后写程序就用对应编译器调用,因为二进制不兼容。高版本gcc编译boost会有对象无法创建,因为gcc弃用了auto_ptr。
Windows下boost安装包下载后,根目录下执行:
bootstrap
b2 —prefix=c:\Boost install
如果要用gcc编译,则加上toolset=gcc

2023-5-23 2.0 -> 2.1

考虑以下报错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Found package configuration file:

C:/boost_gcc_13/lib/cmake/boost_regex-1.84.0/boost_regex-config.cmake

but it set boost_regex_FOUND to FALSE so package "boost_regex" is
considered to be NOT FOUND. Reason given by package:

No suitable build variant has been found.

The following variants have been tried and rejected:

* libboost_regex-mgw13-mt-d-x32-1_84.a (32 bit, need 64)

* libboost_regex-mgw13-mt-d-x64-1_84.a (mgw13, detected vc143, set
Boost_COMPILER to override)

* libboost_regex-mgw13-mt-x32-1_84.a (32 bit, need 64)

* libboost_regex-mgw13-mt-x64-1_84.a (mgw13, detected vc143, set
Boost_COMPILER to override)

Call Stack (most recent call first):
C:/boost_gcc_13/lib/cmake/Boost-1.84.0/BoostConfig.cmake:262 (boost_find_component)
C:/Program Files/CMake/share/cmake-3.28/Modules/FindBoost.cmake:594 (find_package)
CMakeLists.txt:9 (find_package)


-- Configuring incomplete, errors occurred!


  从上面可以看到,CMake已经找到了boost::regex所在的位置,但没有合适的构建变量有问题:No suitable build variant。即Cmake使用的编译器环境和Boost库指定的编译器环境(由于二进制不兼容问题,因此boost库需要记录自身被编译时的编译器)不一致。
发生场景:我用vscode的cmake插件按照cmakelist.txt自动一键构建项目并没有问题,但是在build文件夹中手动使用cmake .. 构建就会出现上述报错。
原因:当输入cmake ..生成项目时,cmake.exe自动选择了环境变量中的C++编译器:MSVC2019(版本号vc143),
— Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.38.33130/bin/Hostx64/x64/cl.exe - skipped
  自此之后,用户的所作所为与插件无关,此时Boost_COMPILER 变量被设置为”vc143(即build varriant)。由于我所要导入的boost库是用gcc编译的, 那么就会出现上面的:Cmake指定的当前构建项目所使用的编译器环境(v143)和Boost库指定的编译器环境(gcc)不一致。一键生成时没有发生这个错误,因为已经在CMake插件中把编译器设定为gcc了。
  解决方法:在Cmakelist.txt中指定构建项目所使用的编译器,加入set(Boost_COMPILER “-mgw13”),这样Cmake在匹配当前编译器和boost库指定的编译器才会一致。cmake ..就可以正常构建了。

2023-5-23 2.0 -> 2.1

  问题起源: 系统中安装了vs2019和MinGW,想使用CMAKE生成makefile,使用gcc编译,在使用cmake生成makefile时,文件中指定了编译器为g++,无论怎么执行,cmake生成的文件都是VS2019项目文件,无法生成mingw makefile,查阅了网络及说明,没有什么头绪,文档中都是说明在cmakefilelists中指定即可,或者使用命令行指定编译器,结果都没有事项想要的效果。最终成功的过程如下,做一记录,方便自己后面查询,方便其他有类似困扰的人参考借鉴。
  链接:https://zhuanlan.zhihu.com/p/548235468
MSVC编译器在CMake构建过程中不生成Makefile文件!gcc才生成
想使用GCC编译器在Windows上编译,

CMakelist.txt中要加
set(CMAKE_C_COMPILER “C:/GCc/mingw64/bin/gcc.exe”)
set(CMAKE_CXX_COMPILER “C:/GCc/mingw64/bin/g++.exe”)

执行cmake ..时,还要加上-G “MinGW Makefiles”。完整版如下:
cmake .. -G “MinGW Makefiles”

2023-5-23 2.0 -> 2.1

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘SSLError(SSLZeroReturnError(6, ‘TLS/SSL connection has been closed (EOF) (_ssl.c:1135)’))’: /simple/jdc/

在 pip install jdc过程中发生问题如上
关闭VPN、防火墙,换国内镜像源,
pip install xxx-package -i http://mirrors.aliyun.com/pypi/simple/ —trusted-host mirrors.aliyun.com
pip install xxx-package -i http://pypi.doubanio.com/simple/ —trusted-host pypi.doubanio.com

链接:https://blog.csdn.net/qq_40758284/article/details/114842247

2023-5-23 2.0 -> 2.1

mysql使用踩坑:
尝试在Linux服务器上安装MySQL注册使用,查到的教程大多是老版本的故在此记录一下。
mysql8.0之后,安装MySQL时会默认创建一个root账号(非服务器root),8.0版本之前是需要手动设置密码的,采用的身份验证插件是caching_sha2_password(更古早之前是mysql_native_password)在8.0之后,root不需要在MYSQL安装的时候手动设置密码,因为root的身份验证插件被设置为auth_socket,它与操作系统的用户身份验证机制集成,说白了就是允许用户使用操作系统用户的凭据来登录mysql(sudo mysql直接登陆),而不需要特定的用户名和密码。

  • 使用数据库要启动MySQL服务,并切换到对应的数据库(use database)。
  • user@localhost是只允许本地登录,即不允许通过ssh远程登陆,要把localhost改成%,并把mysqld.cnf中的bind-address=127.0.0.1的IP地址改为0.0.0.0
  • 每次新建数据库,都需要root用户给其他用户授权,其他用户才能查看使用该数据库,不然其他用户甚至无法得知该数据库的存在。初始情况下只有root用户可见sys和mysql数据库。
  • MySQL数据库的报错不会详细解释哪里错误,几乎只会报这种,因此要自己排查ERROR 1044 (42000): Access denied for user ‘yhl’@’%’ to database ‘TinyWebServer’。

链接:
设置root为密码登录、远程登录。(这样设置以后sudo mysql失效,因为authsocket被改为了mysql_native_password):
https://blog.csdn.net/ha1bert
/article/details/123629199
使用手册:
https://blog.csdn.net/hwx865/article/details/90287715
验证插件:
https://zhuanlan.zhihu.com/p/662074854
https://blog.csdn.net/SunZLong/article/details/103926902

2023-5-23 2.0 -> 2.1

unicode是一种编码方式,UTF-8是在unicode的编码上继续编码,即把字符编成二进制序列,(甚至有全角半角)之分。。
链接:https://zhuanlan.zhihu.com/p/38333902
链接:https://zhuanlan.zhihu.com/p/260192496#:~:text=%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%EF%BC%88Character,Encoding%EF%BC%89%EF%BC%9A%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%E6%98%AF%E6%8C%87%E4%B8%80%E7%A7%8D%E6%98%A0%E5%B0%84%E8%A7%84%E5%88%99%EF%BC%8C%E6%A0%B9%E6%8D%AE%E8%BF%99%E4%B8%AA%E6%98%A0%E5%B0%84%E8%A7%84%E5%88%99%E5%8F%AF%E4%BB%A5%E5%B0%86%E6%9F%90%E4%B8%AA%E5%AD%97%E7%AC%A6%E6%98%A0%E5%B0%84%E6%88%90%E5%85%B6%E4%BB%96%E5%BD%A2%E5%BC%8F%E7%9A%84%E6%95%B0%E6%8D%AE%E4%BB%A5%E4%BE%BF%E5%9C%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%AD%E5%AD%98%E5%82%A8%E5%92%8C%E4%BC%A0%E8%BE%93%E3%80%82

  1. 注意:unicode不能直接当作编码使用!因为unicode只是给了天下所有的字符规定了一个二进制标识,但是用不了,因为其并没有指明一些标志,有的字符的unicode编码是三个字节,有的是一个字节,那么在解码的时候是当成一个字节还是三个字节?因此unicode相当于一种半编码,本质上还是一种字符集。为了解决这个问题,UTF-8问世,观察其编码方式可以看出是在unicode编码上继续编码的。
  2. C++代码,python代码无论怎样都不会出问题,因为无论是GBK还是UTF-8,ASCALL码的编码都一样,代码都属于ASCALL码。所以出问题的只有printf中的汉字,绝大多数因为代码文件是UTF-8编码,但Windows、powershell下的默认解码方式为逆GBK编码方式解码。因此解决方法要么把源文件的UTF-8编码成的二进制码先转化为unicode编码的二进制码,再转成GBK的二进制码(除非安装了插件,否则不可能一步到位),要么把终端的编码方式从GBK更改为UTF-8,问题解决,这样只需要在系统里改变一下时区编码。
  3. 别人传给你一个文件,其本质是一堆二进制码(不变的通货),但是按照创造者的编码方式编成的二进制码(如UTF-8),也就是原创作者的中文实际转换成了UTF-8的二进制码。当你的编辑器打开该文件时,是要把计算机看到的二进制码按照某一种编码方式进行相应解码的。如果使用了错误的编码(GBK)解码,那么就会看到文件中的中文是一堆乱码。用UTF-8解码就完全正确了。vscode中的按编码重新打开的意思实际是按照某一种编码方式解码解出文件创造者的本意(符号集)。A写了一个C++文件main.cpp,实际上A看到、写的是一堆符号集,其在A电脑中的存储方式是按照UTF-8编码方式(假设A用的就是UTF-8编码方式)把符号集合映射成了二进制码,A把文件发给B,B的计算机看到的就是这些二进制码。B怎么解读出A的本意(解出对应的符号集)呢?B的计算机按照UTF-8解码,拿着二进制的字节返回去找对应的符号集(数字、英文汉字),就可以看到A的所见了。这个解码过程被许多IDE标记成了“通过···编码重新打开”,混淆了视听。点击VScode右下角就可以重新按其他方式解码。
  4. 为什么你的C++文件会出现乱码?因为假设你的文件编码格式是UTF-8,然后你通过IDE打开,此时如果IDE出现乱码,说明IDE的解码方式不对,reopen with new encoding method(通过其他的编码方式打开(解码),此处为UTF-8)。当显示正确后,运行C++文件,看控制台输出,此时可能还会出现输出的中文乱码,这是因为终端可能使用GBK方式解码,即将文件想要输出的二进制序列用GBK的解释方式解释成了乱符号展现出来,此时用两个解决方法:把终端的编码方式改为UTF-8(在所用语言那里改),要么就把文件重新保存为GBK编码的文件(此时要确保文件显示正确,因为用其他编码方式重新保存后计算机存储的二进制序列发生改变!)。在所有过程中,英文和数字不受影响,因为在所有的编码方式中,英文和数字的编码规则是统一的。

2023-5-23 2.0 -> 2.1

关于屏幕的分辨率、DPI、点距、像素
https://blog.csdn.net/shuair/article/details/119180337
关于屏幕PPI与清晰度:
https://zhuanlan.zhihu.com/p/144030441

注意,像素是正方形,1像素的大小是可以变化的,一个屏幕的最优分辨率之下,屏幕的长宽分辨率之比和它的实际长宽比一样。DPI是单位英寸长度上的像素数量,PPI是对角线上的像素数量,因此二者越大就越清晰。越清晰,单个像素点必定越小、点距越大。
4k分辨率调成1080p,为什么比正常1080P模糊?

  1. 插值算法,链接:https://zhuanlan.zhihu.com/p/266951945
  2. 4个像素点代替一个像素点,实际四个像素点中间是有缝隙的。

2023-5-23 2.0 -> 2.1

使用vscode的过程中,关于系统/用户新添加的环境变量没有更新的问题(在cmd中好用,但vscode终端中不好用):
要把vscode相关程序全部关掉,vscode会保存其打开前的所有环境变量,使用过程中不再更新,因此关闭即可。
https://blog.csdn.net/weixin_43911160/article/details/129652580

在ubuntu的Gcc下有make.exe,但在windows中的MinGW64下则是mingw32-make.exe
Microsoft Visual Studio的逆天版本号:
https://blog.csdn.net/lu_embedded/article/details/138359375
利用MSVC编译器
具体过程:建立build文件夹,在其中cmake ..
(可以看到cmake ..指令在windows平台上优先选用MSVC编译器,生成符合MSVC的中间文件)回到cmakelist.txt同级目录,执行
cmake —build build

2023-5-23 2.0 -> 2.1

查看文件编码问题:

  1. 利用Sublime Text打开乱码文件。
  2. 菜单栏中选择View->Show Console。
  3. 控制台输入以下代码并回车:view.encoding()
  4. 控制台会返回当前文件的编码格式,如UTF-8,Western、GBK等。
  5. Sublime Text在File下有reopen with Encoding、Save with Encoding等选项。reopen with Encoding不会改变文件的二进制存储内容,其原理是使用不同的解码方式解读二进制文件,但Save with Encoding会改变二进制存储内容

2023-5-23 2.0 -> 2.1

编译C++项目的过程中,任意源文件的改变(把.h展开的cpp文件),都将导致整个项目都需要重新链接。
如果某文件(.h、.cpp)发生了修改,那么所有#include该头文件的源文件都需要重新编译。一个类新增了一个成员函数,并被#include到了main.cpp,那么main.cpp需要完全重新编译,.h对应的.cpp也要完全重新编译。但main.cpp中主要是链接的其他源文件实现的函数,因此其编译量很小,主要是链接。对应的.cpp文件实现的函数定义比较多,因此编译工作量会多。