KalosAner Blog

「山穷水复疑无路,柳暗花明又一村。」

Windows 开发网络程序之 ws2_32.lib

环境 Visual Studio 2022 Windows 10 准备 导入头文件 winsock2.h 链接 ws2_32.lib 库 链接库 打开项目的“属性”→“配置属性”→“链接器”→“输入”,然后点击“附加依赖项”右侧进行编辑。 然后输入 ws2_32.lib 。 导入头文件 只需要在代码中导入 winsock2.h 这个头文件就行。 示例代码 运...

Visual Studio 2022 修改字体和背景颜色

一、引言 VS 默认的字体非常难看,而且 l 和 1 除了颜色之外一摸一样很难分清。 二、修改字体 1、首先打开 VS,我这里使用的是 VS2022。如下图所示,然后点击 Create a new project (创建新项目),这里也可以不创建代码,但是不创建代码修改完字体不方便查看效果。 然后随便创建一个新项目就行。 2、为了方便查看效果,可以在 Source Files ...

Windows 上配置 neovim

一、引言 本文配置使用的是自定义配置,适用于 C++ 开发。 二、安装 packer.vim Packer 是 LunarVim 默认使用的插件管理器。 进入 C:\Users\<你的用户名>\AppData\Local\nvim-data 中,创建文件夹 \site\pack\packer\start\,在该文件夹下执行 git clone --depth 1 http...

Visual Studio 同时启动多个项目

环境 Visual Studio 2022 Windows 10 添加项目 每个已经创建好的项目都有一个 Solution(解决方案),在 Solution 上右键,然后点击 Add(添加) → new project(新项目) 就可以添加一个新项目。 传入参数 每个项目都可以单独进行配置,如传入参数。在项目上右键点击 Properties(属性)→ Configuratio...

线段树模板

一、动态开点版 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 #include &l...

设计模式(六)

21、命令模式(Command) 概念:将一个请求(行为)封装成一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销得操作。 问题:在软件构件过程中,“行为请求者” 与 “行为实现者” 通常承轩一种 “紧耦合”。但在某些场合——比如需要对行为进行 “记录、撤销/重做(unod/redo)、事务” 等处理,这种无法抵御变化的紧耦合是不合适的。 动机:...

设计模式(五)

17、备忘录(Memento) 概念:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。 问题:在软件构建过程中,某些对象的状态在转换过程中,可能由于某种需要,要求程序能够回溯到对象之前处于某个点时的状态。如果使用一些公有接口来让其他对象得到该对象的状态,便会暴露该对象的细节实现。 动机:如何实现对象状态的良好保存与...

设计模式(四)

13、代理模式(Proxy) 概念:为其他对象提供一种代理以控制(隔离,使用接口)对这个对象的访问。 问题:在面向对象系统中,有些对象由于某种原因(比如对象创建的开销很大,或者某些操作需要安全控制,或者需要进程外的访问等)直接访问会给使用者、或者系统结构带来很多麻烦。 动机:如何在不失去透明操作对象的同时来管理/控制这些对象特有的复杂性?增加一层间接层是软件开发中常见的解决方式。 ...

台式机设置来电自动开机

原因 我们实验室每天所有人离开之后需要关闭实验室电源,而有时候出差需要远程电脑,需要经常让别人帮忙开机。 解决 台式电脑可以通过 BIOS/UEFI 设置 来实现“来电自动开机”。以下是具体步骤: 步骤 1:进入 BIOS/UEFI 设置 开机进入 BIOS/UEFI : 重启电脑后,按下键盘上的特定按键(通常是 Del、F2、F10、Esc 或 F12...

Windows 类标识符

Windows 类标识符 回收站.{645ff040-5081-101b-9f08-00aa002f954e} 回收站(满).{5ef4af3a-f726-11d0-b8a2-00c04fc309a4} 拨号网络.{992CFFA0-F557-101A-88EC-00DD010CCC48} 打印机.{2227a280-3aea-1069-a2de-08002b30309d} 控制面板.{2...