- 博客(148)
- 收藏
- 关注
原创 使用protobuf编译提示无法打开包括文件: ‘absl/log/absl_log.h’: No such file or directory
3、找到生成的visual studio 的sln 后缀文件使用visual studio 2019 打开编译。,可能是因为 Abseil 未正确安装或未在项目中设置包含路径。2、使用CMake生成Visual Studio 项目。Protobuf 3.20+ 版本开始依赖。,但你的系统未正确安装或配置 Abseil。使用手动编译Abseil源码的方式。安装Abseil 库。
2025-04-07 15:07:14
136
原创 c#学习(004)类、对象、类成员的简介
类或对象通知其他类或对象的机制,为c#所持有(Java通过其他方法实现这个机制)绑定(Binding)指的是编译期如果把一个成员与类或对象关联起来。静态(Static)成员在语义上是表示他是"类的成员"实例(非静态)成员在语义上表示它是"对象的成员"存储数据,组合起来表示类或对象当前的状态。通知类或对象重在事件,如各种Timer。二、对象也 叫实例,是类经过实例化后得到的内存中的实体。4、某些特殊类或对象在成员方面侧重不同。5、静态成员和实例成员。一、类是对现实世界事物进行抽象所得到的结果(建模)
2025-03-26 11:48:29
190
原创 c#的.Net Framework 的console 项目找不到System.Window.Forms 引用
首先确保是建立的.Net Framework 的console 项目,然后天健reference 应用找不到System.Windows.Forms 引用。在第一个PropertyGroup下添加。然后在第一个ItemGroup 下添加。打开对应的csproj 文件。
2025-03-26 08:40:25
300
原创 c# 学习(003初识类和名称空间)
1.没有源代码的类库的引用 黑盒引用。2.有源代码的类库的引用 白盒引用。改代码要找到root cause!2、UML(通用建模语言)类图。2、MSDN文档与搜索引擎结合。练习创建类库项目进行项目引用。练习阅读编译期报错并排除错误。1、仔细阅读编译器的错误。
2025-03-25 20:11:46
86
原创 setitimer 使用遇到的问题
/ 相当于什么都没做,只有it_value 有值时才会设置定时器。//定时器的间隔时间。当定时器到期时,它会自动重置为这个间隔时间。如果这个值为0,定时器只会触发一次。// 设置初始的超时值, 如果为0 则不会设置超时,也不会有超时。
2025-03-24 16:43:20
190
原创 写程序遇到的问题(一)
如果不添加#include<string.h> 虽然编译通过但是会在 if( tok[0] == '\0') 提示段错误。
2025-03-24 16:34:22
152
原创 makefile 提示seperator
需要再~/.vimrc 中添加 set noexpandtab。noexpandtab 意思是禁止将tab键识别为多个空格。
2025-03-23 20:57:10
99
原创 ubuntu安装最新版本的 Git(通过 PPA)
Ubuntu 官方仓库中的 Git 版本可能不是最新的,如果你需要安装 Git 的最新版本,可以使用 Git 的官方 PPA。
2025-02-16 21:53:16
127
原创 新建github操作
1.在github.com的主页根据提示新建一个depository。2.配置用户名和邮箱3.生成ssh秘钥找到public key 对应的文件路径复制显示的内容4.将复制好的秘钥复制到github上找到github上的setting 点击然后找到ssh key 字样 添加秘钥5克隆仓库中的代码 选择ssh 链接git clone ssh链接。
2025-02-15 17:37:01
670
原创 qt的QMainWindow保存窗口和恢复窗口状态
保存窗口状态QByteArrayQSettings恢复窗口状态需要传入QByteArray,它会自动恢复所有停靠窗口和工具栏的状态。
2025-02-13 20:15:08
447
原创 qt的QSizePolicy的使用
在 Qt 中,控制。如果想要,可以通过和设置。基本用法假设我们有一个QWidget或者QLabel需要在或里调整大小:这样label,并且允许它占据多余的空间。伸缩因子示例假设在一个里,有两个QLabel和label2在中会根据分配额外空间。label1占1份,label2占2份,因此label2会比label1。
2025-02-13 19:25:22
379
原创 qt 控件的焦点事件
在 Qt 中,设置焦点策略是通过QWidget的方法来实现的。焦点策略控制了一个控件何时和如何获取焦点。Qt 提供了几种常见的焦点策略,以帮助管理控件的焦点行为。
2025-02-12 10:00:00
309
原创 qt 事件的传递顺序
通过,你可以拦截和修改事件的传递行为。这在需要对多个控件共享事件处理逻辑时非常有用,例如:拦截鼠标事件、键盘事件等。事件过滤器返回true表示事件已被处理,不再传递给目标控件,返回false则继续传递事件。
2025-02-11 22:26:23
1139
原创 qt串口通信
以下是一个基本的串口通信示例,演示如何在 Qt 中打开串口、发送数据、接收数据以及关闭串口。在使用 Qt 创建串口通信程序时,请确保在项目的。
2025-02-11 15:53:34
203
原创 第五章 Linux网络编程基础API
sockfd 参数由socket系统调用返回一个socket,serv_addr 参数是服务器监听的socket地址,addrlen参数指定sockaddr 的长度。bind 将my_addr所指的socket 地址分配给未命名的sockfd文件描述符,addrlen参数指出该sockaddr的长度。printf("网络字节序的地址值:0x%x\n", addr.s_addr);// 转换成功,addr.s_addr 存放的是网络字节序的地址。
2025-02-04 16:02:56
345
原创 哈夫曼树
哈夫曼树(Huffman Tree)是一种最优的二叉树,常用于数据压缩,如在 Huffman 编码中使用。它是根据字符出现的频率来构造的,频率越高的字符越靠近树的根,频率低的字符则在较深的节点上。其核心思想是通过构建一颗最小堆(或者优先队列)来逐步合并最小的两个节点,直到所有节点都合并成一颗哈夫曼树。
2025-02-02 17:09:16
282
原创 c++ tuple学习记录(二)
在c++中,std::tuple是一个模板类,位于<tuple>头文件中,用于存储多个不同类型的值。与std::pair类似,但支持存储多个元素,并且每个元素可以是不同的类型。以下是std::tuple的主要用法。
2025-01-18 13:09:27
335
原创 c++ chrono 操作 以及c语言的时间操作
时间点的默认单位取决于其时钟类型如(std::chrono::system_clock或std::chrono::high_resolution_clock).可以通过std::chrono::duration_cast将时间点转化为特定的时间单位。std::chrono::time_point是c++11引入的一个模板类,用于表示特定的时间点。它通常和std::chrono::duration结合使用,支持加减操作和时间点比较操作。time_point支持比较操作符<,<=,>,>=,==,!
2025-01-16 21:32:58
273
原创 Qt学习1
QUuid是 Qt 库中的一个类,用于生成、表示和操作(通用唯一标识符,Universally Unique Identifier)。UUID 是一种广泛使用的标识符,通常用来唯一地标识对象、记录、会话、文件、实体等。QUuid类提供了一个简单的接口,用于创建、解析和操作 UUID。UUID 在很多应用场景中都有广泛使用,比如在数据库中作为主键、在分布式系统中唯一标识设备和实体、在文件系统中生成唯一文件名等等。
2025-01-02 17:46:05
407
原创 汇编基础DOSBox的使用
g 数字 执行到代码段的指定位置 如果数字为空则执行到程序末尾直至结束。-e 立即数/寄存器:偏移值 修改从给定地址内存中的字节值。c: // 进入有debug.exe 的文件夹。-u显示代码段的汇编指令 从cs:IP处显示。首先mount c d:/masm回车。-a 向代码段写入汇编代码。-rax修改ax中的值。DOSBox 的使用。-r 显示寄存器的值。
2024-12-30 15:51:43
375
原创 shell 编程(五)
df 命令时unix 和类unix系统中用于显示文件系统磁盘空间使用情况的命令,df 是disk free的缩写,它可以显示磁盘上每个挂载点的使用情况,包括总容量,已用空间,可用空间以及挂载点信息。
2024-12-25 21:10:41
880
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人