全面理解STL-std::string用法指南&源码刨析
一、ASCII码计算机如何表达字符众所周知,计算机只能处理二进制整数,字符要怎么办呢? 于是就有了 ASCII 码表,它规定,每个英文字符(包括大小写字母、数字、特殊符号)都对应着一个整数。在计算机里只要存储这个的整数,就能代表这个字符了。 例如 32 代表空格,48 代表 ‘0’,65 代表 ‘A’,97 代表 ‘a’…… 32~126 这些整数就用于是表示这些**可显示字符(printable character)**的。 除了可显示字符(printable character)外,ASCII 还规定了一类特殊的控制字符(control character): 0...
现代CMake
现代CMake指的是 CMake 3.x 古代CMake指的是 CMake 2.x 现代CMake比古代CMake使用更加方便,功能更加强大 命令行小技巧传统构建方式对比:1234567891011# 古代 CMakemkdir -p build # 创建build目录cd build # 切换到build目录cmake .. # 在build目录运行cmake <源码目录>生成Makefilemake -j4 # 执行本地的构建系统 make 真正开始构建(4进程并行)make install # 让本地构建系统执行安装步骤# 现代 CMakecmake -B...
面试寄录
...
编译器与IDE
...
霍格沃兹环境
霍格沃兹环境工作原理:首先,简单科普一下上网的原理。一般情况下,我们访问网页时,只需要在浏览器中输入网址,就可以直接访问到目标内容。 某些资源可能因为地域限制、网络防火墙等原因无法直接访问。这时,我们就需要借助代理服务器。代理服务器充当了中间人的角色,帮助我们访问被限制的资源。整个过程变成如下图所示: 我们俗称的代理上网实际上指的就是第二种过程。 代理软件:为了实现代理上网,通常需要使用代理软件,它们能够帮助我们设置代理服务器并进行连接。常见的代理软件包括: v2rayN :基于 V2Ray 协议的 Windows 客户端。 Clash-verge-rev :基于 Clash...