自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 CMake更进三步

更进一步里面介绍了项目里自己常用的技巧,更进二步里面介绍了windows下的技巧,而在windows下GUI开发基本离不开Qt,所以更进三步介绍配置Qt的一些方法。

2023-08-13 19:04:08 148

原创 CMake更进二步

接前面的脚本,可以看一下脚本如何传参给 CMake,项目中这一块用的也比较多。# 开关 ON/OFF 类型# 直接 if 判断endif()# 字符串类型的endif()只要你想通过 CMake 实现构建自动化,那么我不允许还有人不知道命令,它主要是用于将自定义的构建命令添加到项目中。[VERBATIM][APPEND]:指定需要执行自定义命令的目标(可执行文件、库等)。:指定自定义命令是在预构建阶段、预链接阶段还是后构建阶段执行。:指定要执行的命令。

2023-08-09 19:12:08 205

原创 CMake更进一步

以前翻译过CMake的官方文档,之后自己整理了一份入门级别的个人心得,随着很长一段时间的积累和沉淀,现在准备写项目管理中经常用到的一些比较好用的 CMake 用法。

2023-08-09 12:11:00 159

原创 CMake 个人心得

在使用一段时间 CMake 后对编写 CMakeLists.txt 的一些经验总结

2022-02-22 16:05:05 238

原创 linux c++ status 获取进程名称不完整问题记录

`/proc/$pid/status` 获取的文件名称存在 15 个字符长度的截断问题,如何避免这个问题?

2021-12-01 14:06:38 2397

原创 linux 下根据PID查找服务信息

最近在 linux 下需要实现2个函数通过 pid 找 服务信息根据 服务名 找 服务信息网上有很多实现的方式,我这里简单贴一些代码根据PID查找服务信息bool findNameByPid(const int &pid, std::string &servername){ char buf[BUF_SIZE] = {0}; char name[50] = {0}; std::string proc_pid_path = std::str

2021-10-28 15:29:56 5942 1

原创 Qt + MSVC 为啥总有乱码?

这篇文章将换个角度带你了解 Qt 在使用 MSVC 编译器的环境下,乱码生成的原因!测试环境: Qt5.15.2 + MSVC 2017写一个最简单的 Demo 验证我的思路,用 UTF-8 的文件保存我的代码,注意我测试用的是 UTF-8 文件#include <QDebug>#include <QString>int main(){ qDebug() << QString("测试"); qDebug() << QStrin

2021-09-12 21:25:32 1113 1

原创 Qt 最小化到托盘及其相关功能

一个客户端程序, 有时候会需要提供退出到最小化托盘的功能, Qt 的 QSystemTrayIcon 类就刚好实现了这个功能, 这篇文章主要就是对它简单封装一下,实现一些额外的功能 功能点最小化到托盘例如微信收到消息, 托盘状态下闪烁托盘下菜单功能托盘下鼠标事件的响应首先看一下简单封装后的 OwnSyetemTrayIcon 的头文件class QMenu;class QTimer;class OwnSyetemTrayIcon : public QSystemTrayIcon{

2021-08-15 15:00:25 1561

原创 Centos 下 GCC 版本更新

最重要的事情提前说:为了降低风险,注意备份或者克隆保存虚拟机状态在 centos 的开发环境下, 有时会遇到 gcc 版本升级或切换的问题,这里介绍2种方式,这里比较推荐第二种方法一下载对应版本的 gcc 源码,而编译源码首先需要本地拥有编译器# 安装一些可能用到编译的工具# 我的 centos 下默认的 gcc 版本是 4.8, 这也是我需要更新 gcc 的原因yum install -y gcc yum install -y gcc-c++ yum install -y wget

2021-07-28 20:40:38 2114 1

原创 Centos 下 ld 链接器版本更新

最近在编译一个工程的时候, 偶然遇到一个报错 /usr/bin/ld: 某个库 : unrecognized relocation (0x2a) in section `.text`/usr/bin/ld: final link failed: 错误的值这个错大致意思在符号链接过程中, 链接失败, 而出现下面这样的情况,大概率就是链接器版本不正确导致的而 ld 是 GUN 下提供的库链接器, 通过和同事比较了一下 ld 工具的版本后, 果然是我的版本较低, 所以接下来主要就是更新 ld 这个工具

2021-07-28 20:36:49 5750 2

原创 设计模式-导读&助记

你确定你真的对记住了所有的设计模式了吗?各个设计模式的详细介绍都已经完成,但是不经常用总会忘,所以我想用 一句话 总结设计模式,思考模式的真正意图,再用 一点提示 来思考代码如何实现写在前面我整理的设计模式这一个系列,主要是结合了以下几本书 :《设计模式:可复用面向对象软件的基础》 : 个人觉得如果想系统学习设计模式必须看的一本书,阅读是有一定难度的,但是它有很多其他书没有涉及到细节介绍《大话设计模式》 : 设计模式入门必看的书籍,用对话的形式以及很多形象的例子很生动的介绍各个设计模式,就一句话

2021-05-25 17:47:34 153

原创 查缺补漏-排序篇

今天突然被朋友问到: 来来来, 快速手写个 堆排序 看看?我: 嗯…嗯…嗯??? 好吧, 我只记得好像需要建立一个 最大堆, 然后一个一个取出最大值, 但是 最大堆 的代码又咋写?那么与其整理一个堆排序, 不如整理所有常见的十种排序算法!不过这篇文章主要是总结算法的思路以及提供一份 C++ 的实现, 起到一个 助记 的目的总览排序算法平均时间复杂度最差情况空间复杂度排序方式稳定性冒泡排序O(n2)O(n2)O(1)In-place稳定插入排序O(n2)

2021-05-24 01:33:23 125

原创 Python-APScheduler导读

APScheduler 的从初识到源码阅读已经完结撒花了,再来一个导读的目录,就算是真正的完整了~ Advanced Python Scheduler(APScheduler) 是 python 下一个超强大的定时任务框架,整体的使用难度不大,还是很值得学习和使用的这篇文章是自己学习 APScheduler 过程中,对自己整理的所有笔记做了一个导读的目录,其中包括使用的说明,常用 API 的整理, 以及对它所有核心模块的源码阅读一个必须强调的点,我所有的源码解析都是基于 APScheduler 的 3

2021-05-01 20:12:21 318

原创 APScheduler 源码阅读(五) schedulers

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序终于来到最核心的 schedulers 部分的源码分析了,在将其他模块都介绍完之后, schedulers 最核心的部分是如何将它们拼接起来总览先总览一下文件夹下的目录结构简单整理一下

2021-04-30 17:33:56 453 2

原创 APScheduler 源码阅读(四) triggers(四)

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 triggers 触发器的混合模式 CombiningTriggerBaseCombiningTriggerBaseCombiningTrigger 是混合使用的 trig

2021-04-15 17:38:00 439

原创 APScheduler 源码阅读(四) triggers(三)

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 triggers 触发器简单回顾一下 CronTrigger 的正则表达式解析提供一些类类正则表达式AllExpression*/step*Ra

2021-04-13 00:36:59 592

原创 APScheduler 源码阅读(四) triggers(二)

趁热打铁, 学习一下 APScheduler 的 python 的源码, 很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 triggers 触发器前文已经介绍了基类 BaseTrigger 以及在固定时间执行一次的 DateTrigger 和以固定时间间隔运行任务的 IntervalTrig

2021-04-05 22:41:15 293

原创 APScheduler 源码阅读(四) triggers(一)

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 triggers 触发器分类triggers 触发器主要分为 4 种date : 在给定的日期时间触发一次。如果选择的是 data, 但是没有设置具体执行时间,则使用当

2021-04-02 15:19:58 460 1

原创 APScheduler 源码阅读(三) jobstores

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 jobstores 事件总览定义一个基类 base.py, 基类中可能包含对添加任务,删除任务等等接口,不同的 任务存储 (memory, mongodb, redis

2021-03-28 10:37:39 2042 4

原创 APScheduler 源码阅读(二) job

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 job 事件Job 记录自己的触发条件 triggers, 记录自己的所属的任务存储 jobstores, 记录自己交给谁执行 executors, 记录由谁来调度 sche

2021-03-26 11:29:35 1222 2

原创 APScheduler 源码阅读(一) executors

趁热打铁,学习一下 APScheduler 的 python 的源码,很好奇任务调度控制的实现。 分析源码主要还是针对 APScheduler 下的几个关键的模块events 事件executors 执行器job 任务jobstores 任务存储triggers 触发器schedulers 调度程序这一篇主要瞅瞅 events 事件 和 executors 执行器events 事件event 主要是 APScheduler 中触发的事件类,我们可以通过 add_listener()

2021-03-20 17:41:33 773

原创 python-request库

在对 http 的 api 测试时,或者利用 api 实现批量添加、删除等等重复的工作时,必然需要利用一个发送 http 请求的库,今天介绍一个我在使用过程中感觉相当简单的一个库-- requests 安装python -m pip install requestsrequests 支持 python 的版本为 2.7 以及 3.5+模块说明对于发送一个 http(s) 请求,无非就是发送一个请求对发送结果的处理,简单可以分为下面两部分发送成功后,对收到的数据处理发送失败,对异常状况

2021-03-15 23:59:40 1151

原创 python-APScheduler-API总结

之前比较泛泛的介绍了 APScheduler 库,但是其中有一些模块的接口需要额外注意一下,本篇文章比较干,真正开发的时候,可以当成工具用 eventevent 主要是 APScheduler 中触发的事件类,我们可以通过 add_listener() 为调度程序绑定监听函数,在收到指定事件后做一些自定义的操作事件对应枚举值描述归属类EVENT_SCHEDULER_STARTED1调度程序启动SchedulerEventEVENT_SCHEDULER_SHUTDOW

2021-03-12 17:12:31 2372

原创 python-APScheduler库-入门介绍

超强大的任务调度库 简单描述Advanced Python Scheduler(APScheduler) 是 python 下的一个允许你安排稍后执行任务,一次执行或定期执行任务的库。你可以随时添加新的任务或删除旧的任务。如果您将任务存储在数据库中,它们也将在调度器重新启动后继续运行并保持其状态。当调度程序重新启动时,它将运行它脱机时应该运行的所有任务除此之外,APScheduler 还可以作为跨平台、特定于应用程序的替代品,替代特定于平台的调度器,例如cron守护程序或Windows任务调度器。但是

2021-03-08 16:38:34 938

原创 微信公众号封面一键生成器-续

上一篇文章介绍了我对小工具的需求,实现过程中用到的 python 库的信息以及 demo 的展示,这篇文章主要就是对其中一些实现细节的总结 代码细节这个工程是在 python 3.6 下实现的小工具,主要使用到 tkinter 中的若干控件,以及 PIL 的图片生成和图片放缩,以及截图的功能源码地址:https://github.com/catcheroftime/CreateWxCover界面布局代码很简单,一步一步按照预设的布局添加控件即可def __createMainwinow(sel

2021-03-04 22:49:57 1320 1

原创 微信公众号封面一键生成器

先说痛点,写完一篇公众号,都要为其配一个封面,而我的封面已经很简单了,大部分情况下都是 文章题目 + 背景图片 的形式,简单使用 PS 也会,但是每次还要调整图片大小,文字样式,大小等等还是太繁琐,最好给一张 图片 + 文字 按照一定大小,位置直接生成就完事了 这一篇主要是确定自己的需求,和实现的这些需求需要用到一些 python 库操作界面这个工具在我的脑海里可能只有几个简单的按钮,所以直接选择 python 自带的 tkintertkinter 是 Python 的标准 GUI 库,这意味着,只

2021-03-01 17:39:20 4104 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除