自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker常用命令

1、镜像操作2、容器操作。

2024-04-25 23:08:01 154

原创 一、词类和句子

1)名词(n.): 表示人、事物、地点或抽象概念的名称。如:boy, morning, bag, ball, class,orange.2)代词(pron.): 主要用来代替名词。如:who, she, you, it .3)形容词(adj):表示人或事物的性质或特征。如:good, right, white, orange .4)数词(num.): 表示数目或事物的顺序。如:one, two, three, first, second, third, fourth.

2024-04-19 16:42:02 796

原创 Boost之multi_index

【代码】Boost之multi_index。

2024-04-15 21:37:15 423

原创 boost之bimaps

Boost.Bimap 是 Boost 库中的一个容器,它支持双向映射,即允许通过键查找值,也允许通过值查找键。

2024-04-14 20:52:49 564

原创 Boost之Python

需要注意的是,尽管 Boost::Python 提供了许多便利的功能,但它的实现依赖于 Python/C API,因此在使用时要结合 Python/C API 的相关知识。此外,Boost::Python 的某些功能可能还不完善,需要开发者对 Python/C API 有一定的了解,以便在遇到问题时能够进行调试和解决。总的来说,Boost::Python 为 C++ 和 Python 之间的互操作提供了一个强大而灵活的工具,使得开发者能够充分利用两种语言的优势,实现更加高效和强大的应用程序。

2024-04-14 11:08:13 952

原创 Boost之date_time

Boost.Date_Time库是一个功能丰富的时间日期处理库,它提供了多种用于日期和时间计算、格式化、转换和输入输出的功能。

2024-04-13 17:48:17 335

原创 psutil库(获取系统资源信息)

psutil库是Python的一个第三方模块,它提供了丰富的接口来获取操作系统和系统硬件的信息。以下是psutilCPU信息获取:可以使用psutil来获取CPU的逻辑数量和物理核心数量。这有助于了解系统的处理能力。磁盘使用情况psutil能够报告磁盘的使用情况,包括总容量、已用空间和可用空间。内存使用情况:可以获取系统的内存使用情况,包括总内存、已用内存和空闲内存。网络相关信息psutil能够提供网络统计信息,如当前网络连接、带宽使用等。进程管理。

2024-04-06 15:15:08 775

原创 lsof命令

lsof是一个用于列出当前系统打开文件的工具,它可以帮助我们了解哪些进程正在使用某个文件或者网络端口。

2024-04-06 14:34:35 354

原创 文件系统监视库(watchdog)

Watchdog库能够监控文件和目录的创建、修改、删除和移动等操作。它通过使用底层原生API(如Windows的ReadDirectoryChangesW、Linux 2.6+的inotify以及Mac OS X的kqueue或FSEvents)来优先实现高效的监控,如果不支持这些API,则通过轮询磁盘的方式进行监控。总的来说,Python Watchdog库是一个强大而灵活的工具,可以帮助开发者轻松地实现文件系统变化的监控,适用于需要实时响应文件变化的各种应用场景。

2024-04-05 21:56:45 583

原创 C++ templates: (4)、引用折叠

引用折叠(Reference collapsing)是C++11中引入的一种规则,用于处理函数模板参数的类型和值完全匹配的情况。当一个非const左值引用和一个右值引用绑定到同一块内存时,引用折叠会发生。在函数模板参数中,T&&称作万能引用,可以转发const 左值引用,左值引用和右值引用。

2024-04-05 15:53:22 293

原创 左值、右值、左值引用、右值引用

综上所述,左值和右值的主要区别在于是否可以被赋值和取地址,而左值引用和右值引用则是基于这两种值类型的引用,分别用于不同的场景和目的。

2024-04-05 13:37:06 213

原创 C++ templates: (3)、变量模板

【代码】C++ templates: (3)、变量模板。

2024-04-05 11:52:19 232

原创 zookeeper之基本命令

create [-s] [-e] [-c] [-t ttl] path [data] [acl]容器节点是Zookeeper 3.5版本以后新增的节点类型,与普通节点(持久节点)的主要区别在于其自动清理的特性和专门的使用场景。具体如下: delete [-v version] path deleteall path [-b batch size]Zookeeper的命令用于删除指定的节点。具体来说,命令有两种形式,一种是单独使用,另一种是结合命令一起使用。delete命令格式:注意事项

2024-04-04 22:46:03 1533

原创 C++ templates: (2)、变参模板

可以将模板参数定义成能够接受任意多个模板参数的情况。这一类模板被称为变参模板。

2024-04-04 16:34:07 541

原创 C++ templates: (1)、类模板

可以理解为模板的一个特例,需要特殊处理的情况。说明如何转化类模板构造函数的参数类型。1、类模板定义(主模板)2、模板特化(偏特化)4、成员类型的别名模板。

2024-04-04 10:43:40 377

原创 Linux文件搜索工具(gnome-search-tool)

opensuse下安装:操作界面:

2024-04-03 11:40:11 583

原创 Boost之Log: (3)、简单封装

1、每个Logging source对应一个目录,可以设置日志文件数,日志大小,目录名,文件名等。2、每个logging source的对应的目录都在一个根目录下。3、可以动态创建和删除logging source。

2024-04-02 22:13:19 772

原创 Boost之Log: (2)、代码练习

日志源有宽字节版、单字节版、多线程版、单线程版、带严重等级的版本 下面这行代码创建了一个宽字符、多线程安全、有日志严重等级的日志源: boost::log::sources::wseverity_logger_mt log; 可以给每个日志源设置属性,也可以设置全局的日志属性,这里属性的的作用是为了给日志记录添加属性,比如给日志源log添加了属性A,那么用日志源log生成的日志记录都会有A这个属性,后面的日志过滤和日志格式化,都可以围

2024-04-02 19:28:56 528

原创 Boost之Log: (1)、功能简介

2、把生成的日志记录(log record)传递给日志核心模块,这里可以过滤日志(如果用户有设置过滤器),最后把剩下的日志记录传递给每个日志槽(logging sink)1、日志源(Loging Source)生成日志记录,设置一些日志记录的属性,如线程ID,时间,行号,文件名,函数名,严重等级等,后续的日志过滤都是根据这些属性来过滤.Boost.Log是。

2024-04-01 16:23:48 1022

原创 Qt和Boost::asio中的emit冲突

signals修改为Q_SIGNAL,1.添加编译宏定义QT_NO_KEYWORDS。2、把QT工程中的emit修改成Q_EMIT,slots修改为Q_SLOTS。

2024-03-31 15:15:29 446

原创 C++20之Concept

C++20之Concept(概念部分,之一)_c++ concept-CSDN博客C++20之Concpet(概念部分,之二)_c++ concept-CSDN博客

2024-03-30 13:10:16 468

原创 获取std::exception_ptr指向的异常信息

2、获取std::exception_ptr指向的异常信息。

2024-03-30 09:37:11 604

原创 Boost之cobalt: (2)常用函数介绍

Boost cobalt是一个简单易用的单线程并发框架库,它基于Boost Asio库,对Asio提供的协程功能进行进一步的封装,借鉴了其他语言的一些概念,如promise,generator、race、channel等,简化了C++协程学习难度和代码编写的门槛。

2024-03-29 22:00:58 531

原创 Boost之cobalt:(1)协程的一些概念

协程是一个可以多次调用并返回的函数,它具有自己的状态,并且能够在挂起和恢复执行之间保持这个状态。

2024-03-29 20:41:27 764

原创 QML之一个属性编辑界面的实现

继续细化,标题栏由一个图片和标题文本组成,属性内容是由N个未知窗口组成,那么第一出现的问题是:怎么让Item的大小随着属性内容的展开和隐藏而变化?我想到的是Column或Row,它们的大小都随内容而变,所以只要把包含了标题栏和属性内容的Column的implicitWidth赋值给Item控件的implicitWidth即可。每一类属性都可以展开和隐藏,每一类下的属性都不一样,全部展开后,所有属性共享一个滚动条。我的第一个想法是,这是一个ListView控件,每一个Item都可以展开隐藏。

2024-03-28 18:08:06 662

原创 QML之SpinBox

今天使用SpinBox,为了使界面风格统一,需要修改控件的边框颜色,文本颜色,点击时的背景颜色和文本颜色,这时需要对SpinBox作一定程度的定制化。弄清除了上面两条信息后,就可以开始自定这个控件了,唯一需要注意的是,左右两个按钮的大小需要设置正确,不然会显示不出来,这里需要用。SpinBox主要有三部分组成:左右两个按钮,可以点击,中间一个文本框,用来显示数字或者其他文本。左右两个按钮对应SpinBox的down.indicator和up.indicator参数,

2024-03-27 21:25:08 706

原创 CMake之Presets编写

在CMake工程实践中, 经常需要使用不同的配置编译来编译代码,比如要编译Debug、Relase版本,32位、64位版本,动态链接,静态链接, 使用不同的编译器, 如gcc、msvc, 不同的平台,如Windows、Linux、Android等。如果vscode安装了CMake插件,再写一个CMakePresets.json文件,那么vscode就是一个简化版的IDE工具了,可以鼠标点击切换配置,选择编译的目标文件,调试,运行测试用例,打包,或者执行自定义脚本任务.

2024-03-27 11:26:43 1842

原创 使用cmake组织QML工程代码

2、把一些代码编译成模块,这样才能注册QML自定义类型。1、添加资源文件,主要是图片资源和qml文件资源。3、设置A的编译源文件时用到的头文件路径。4、设置A依赖的动态库或静态库。1、创建一个可执行文件A。2、设置A需要的源文件。

2024-03-26 22:29:00 541

原创 QML之RowLayout

QML中的RowLayout是一种布局管理器,用于在水平方向上排列其子元素。

2024-03-24 11:45:40 775

原创 QM中implicitWidth和width的区别,为什么需要两种大小?

来提供一种建议大小,这样在使用该控件时,如果没有特别指定大小,控件会尝试使用这些建议值来渲染。而在需要固定大小的情况下,可以外部指定具体的。此外,之所以需要这两种大小属性,是因为在不同场景下,控件可能需要不同的尺寸行为。例如,在自定义控件时,可以通过设置。分别代表了控件的隐式推荐的默认宽度和明确指定的宽度。,控件将尽可能地填充其容器的宽度,而不考虑其他宽度设置。通常用于表达控件的首选宽度,但不会强制执行,除非配合使用。则是直接指定控件的宽度,它会覆盖所有的隐式宽度设置。来确保控件按照预期的尺寸显示。

2024-03-24 10:46:36 927 1

原创 Linux录屏工具byzanz

d, --duration=SECS 动画的时间 (默认:10 秒)-x, --x=像素 要录制矩形的 X 坐标。-y, --y=像素 要录制矩形的 Y 坐标。-c, --cursor 录制鼠标光标。-w, --width=像素 录制矩形的宽度。-h, --height=像素 录制矩形的高度。-a, --audio 录音。-v, --verbose 详细。

2024-03-22 14:30:22 154

原创 Linux窗口自动化工具: xdotool

我本来是想找一款工具来获取鼠标的实时坐标,然后得到软件的界面的坐标,方便进行录屏,xdotool没有直接提供这个功能,但是却可以通过脚步来间接实现。下面脚本可以用来获取激活窗口的的坐标。xdotool可以模拟鼠标和键盘的动作行为,可以用来查询窗口,移动窗口,激活窗口,关闭窗口,获取窗口的坐标,获取鼠标的坐标等。

2024-03-22 14:10:56 425

原创 Linux颜色拾取器-Gpick

1.把鼠标移动到任意一点,然后用Ctrl+C命令(也就是文本复制快捷键),这是RGB格式的颜色值就复制了剪切板上,Ctrl+V就粘贴到文本上了。2.把鼠标移动到任意一点,按键盘的空格键,就会录入一个颜色值,他们会保存在上图的左上角Color pciker这里。做界面开发时经常需要取获取屏幕上的颜色值,今天介绍一个Linux免费软件Gpick,可以获取屏幕上任意一点的像素值。

2024-03-22 12:54:00 334

原创 QML之ListView

最近在写一个网络测试小工具,需要用到ListView来显示收到和发送的网络消息,需要能显示消息收到的时间,消息的发送方,还有消息内容,为了防止占用内存过多,要能设置界面上最多显示的消息数量,超过后自动删除最早的消息。感觉主要难点还是这么多窗口的颜色配置,颜色不合适界面就很丑。

2024-03-21 22:02:30 527

原创 QML之TreeView的使用

注: 测试环境为Opensuse 15.5 + Qt 6.6.2。如果有大神知道其他解决办法的,请评论区发出来。

2024-03-20 13:14:37 1385

原创 几种Model的简单使用

此时Model只有一个信息,数据项的个数是多少,没有项数据。由于是JS中的数组,所以数组里的数据类型可以不同。下面主要来介绍下QML中几种Model的使用。对象的属性作为每一项属性。

2024-03-18 18:13:01 361

原创 QML几个常用全局函数

【代码】QML几个常用全局函数。

2024-03-17 22:35:24 424

原创 QML多媒体功能初体验

QML多媒体功能介绍

2024-03-17 21:00:31 556

原创 OpenSuse下Qt安卓虚拟机和VirtualBox虚拟机冲突的问题

sudo modprobe kvm_amd (我是AMD的CPU)找了一圈都没有找到让两者同时启动的办法,只能通过modprobe命令来完成切换。但此时却无法启动VirtualBox虚拟机了,提示如下错误。然后再尝试 启动VirtualBox,这时可以正常启动了。上述命令执行完之后,中可以看到Android虚拟机的界面。这个错误是让我禁用KVM模块,于是执行。

2024-03-16 13:47:21 418

专业CMake实践指南(英文文字版)

CMake入门经典教材

2024-03-27

CMake-QML示例代码

TreeView, ListView, TableView, RowLayout, Row, GroupBox, Button,ComboBox等等控件的自定义及使用

2024-03-26

空空如也

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

TA关注的人

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