Python小工具之LazyTime

代码见GitHub。 利用 PySimpleGUI 和 Borax.Calendars 写的一个小工具,用于显示日期、时间、星期和农历信息。 Win10运行参考界面如下,可拖拽,双击鼠标关闭。

C++函数重载和函数重写

基本概念对于C++中经常出现的函数名称相同但是参数列表或者返回值不同的函数,主要存在三种情况:

Python小工具之简单FTP服务器

代码见GitHub。 UI使用基于tk的PySimpleGUI,FTP服务器使用pyftpdlib,使用pyinstaller进行打包。 Win10运行参考界面

C++简单log

平常写一些简单验证程序时,需要频繁输出日志信息便于调试。为了后续验证程序中输出日志信息方便,将平时使用的日志信息抽象成了INFO和FUNC。 INFO输出单行日志信息,可以输出当前的时间(格式:%Y-%m-%d %H:%M:%S)、进程号和线程号。 FUNC利用RAII可以在生命周期(比如函数)的开始和结束分别打印日志信息,并统计执行耗时(单位微妙)

VS2019 CMake编译gtest

从GitHub下载gtest源码。 从VS2019选择和创建CMake项目。

Windows Terminal集成第三方Bash

将Git Bash和Cygwin集成到Windows Terminal中。 各参数说明参见Windows 终端中的配置文件设置。 我的配置如下。其中guid自定义,确保其唯一性和格式正确行即可;commandline修改为实际安装路径,其中我的Cygwin64配置是以zsh启动。 Git...

const in C++

C++中const可用于变量, 指针, 函数和类. 修饰变量const修饰的变量的值不能再修改, 编译器也可以对其进行数据静态类型检查. 所以用const声明的变量可以保证类型安全, 用以取代C中的宏定义. const定义的常量在C中是全局的, 在C++中则视声明位置而定.

C++类型转换

当运算符的操作数具有不同的数据类型时, C++会自动将它们按照一定的规则转换为相同的数据类型. 理解这些规则将有助于程序员防止一些细微的错误蔓延到自己的程序中. 基本数据类型隐式转换简言之, 基本数据类型的隐式转换遵循的规则是基本数据类型的等级.

C++11智能指针

智能指针是使用RAII方法对普通指针进行的封装, 所以智能指针实质是对象, 行为表现是指针. RAII, Resource Acquisition Is Initialization, 资源获取就是初始化. RAII是一种管理资源、避免泄漏的惯用法. 通常的做法是对于一个对象而言, 我们在构造函数的时候申请空间, 而在析构函数(在离开作用域时调用)的时候释放空间. 使用智能指针可以方便的管理堆内存,...

Hexo博客添加图片

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页 对于在 Hexo 博客中添加图片, 按照 Hexo文档 推荐的方法, 操作大致如下: 设置站点配置_config.yml: 将post_asset_folder:...