自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 资源 (2)
  • 收藏
  • 关注

原创 光照贴图学习

【代码】光照题图学习。

2024-04-06 23:22:52 114

转载 为何Windows下的动态库总伴随一个静态库?

我对VS下的动态库的生成并不是很熟悉,表示无法回答这个问题。但这个问题本身却也让我产生了疑问:动态库真的需要总是伴随着一个静态库?根据我在Linux下的经验,这两种形式的代码库是没有什么依赖关系的。那在Windows下到底是怎么回事?带着这些疑问,我去搜索了一下。下面将得到的结论和一些相关知识进行总结。

2024-03-31 15:58:04 9

转载 Qt D指针 Q指针

(没有翻译,只有链接 便于自己查看,勿喷)https://wiki.qt.io/D-Pointer

2024-03-17 18:55:41 22

原创 git reset --hard origin/master 文件被删除后的恢复操作

【代码】git reset --hard origin/master 文件被删除后的回复操作。

2024-02-18 19:05:41 348 1

原创 Qt Rsa 加解密方法使用(pkcs1, pkcs8, 以及文件存储和内存存储密钥)

【代码】Qt Rsa 加解密方法使用(pkcs1, pkcs8, 以及文件存储和内存存储密钥)

2023-12-03 20:09:59 872

原创 Opengl 纹理(知识点)

opengl 纹理介绍

2023-11-22 23:30:49 142

原创 cmake release模式下 进行调试 (windows Visual Studio)

【代码】cmake release模式下 进行调试 (windows Visual Studio)

2023-11-12 01:04:54 489

原创 Failed to connect to github.com port 443:connection timed out

【代码】Failed to connect to github.com port 443:connection timed out。

2023-11-08 00:15:21 440

原创 Qt http 的认证方式以及简单实现

WWW-Authenticate` 和 `Authenticate` 是两个与HTTP认证相关的HTTP头部字段,用于客户端和服务器之间交换身份验证信息。它们的区别在于使用的上下文和位置。

2023-08-27 13:00:59 909

原创 条款11:优先选用删除函数,而非private 未定义函数

比如在自定义类中 为了阻止其他程序员使用 拷贝构造,等函数。将该函数定义为private 不去定义只是声明, 或者delete.

2023-05-28 16:35:22 115

原创 opengl灯光基础:2.1 光照基础知识

这是一种用于模拟粗糙表面的光照模型。它考虑了表面的微小凹凸结构对光线的散射影响,能够产生更真实的漫反射光照效果。ADS模型:(主要的模型)

2023-05-28 13:58:44 943

原创 opengl灯光基础:2.3材料

【代码】opengl灯光基础:2.3材料。

2023-05-16 00:04:23 169

原创 opengl灯光基础:2.2 ADS模型和Phong 光照模型的关联,以及具体实现

ADS模型是一种光照模型,由环境光照(Ambient)、漫反射光照(Diffuse)和镜面光照(Specular)三个部分组成。它在计算表面的颜色和明暗度时分别考虑了这三种光照的影响。

2023-05-03 20:10:41 213

原创 glDrawArrays 和 glDrawElements 的区别

【代码】glDrawArrays 和 glDrawElements 的区别。

2023-04-09 22:46:55 231

原创 opengl 坐标系

opengl 坐标系统

2023-04-09 14:56:38 441

原创 Opengl(一)窗体的创建

【代码】Opengl(一)窗体的创建。

2023-04-03 23:45:53 138

原创 QStringLiteral 的作用和使用场景:

QStringLiteral 是 Qt 框架中的一个宏,用于创建 QString 类型的字符串字面量。它在编译时执行,并提供了一种更高效的方式来创建字符串。在使用QString字面量时,需要遵循以下规则:在字符串前加上或前缀(两者等价)。或。字符串内容中不能包含\0字符,否则其行为是未定义的。QString总之,使用可以在编译时进行字符串处理,优化程序性能和安全性,并且方便在Qt代码中使用和处理字符串。

2023-04-01 00:23:10 985 2

原创 std::as_const的简单实用

【代码】std::as_const的简单实用。

2023-03-15 23:17:28 396

原创 Qt静态扫描(命令行操作)

Qt 命令行操作静态扫描

2023-03-11 10:54:41 780

原创 Qt 读取Execl 简单使用

读取Execl

2023-03-02 21:39:11 586

原创 Qt 中文乱码 以及 工程 moc bin设置

Qt 小技巧使用

2023-02-25 16:51:04 137

原创 CMake Error: CMake can not determine linker language for target:XXX

cmake 使用

2022-08-28 14:31:50 663

原创 Qt tcp sever

Qt tcp sever threadpool

2022-07-15 00:09:08 540

原创 qt自定义 QLineEdit

Qt QLineEdit 封装

2022-07-12 00:03:36 578

原创 Qt Https http 请求案例

Qt Https

2022-06-12 23:55:51 449

转载 为什么全局变量、静态变量、单例不好

原文地址链接:https://fuzhe1989.github.io/2017/09/30/why-global-static-singleton-var-evil/(文章没有转载完整, 只是做个记录,为了后面好去复习)全局变量很多人都知道代码中要尽量避免使用全局变量,那么全局变量有什么问题,为什么大家觉得它不好?因为全局变量是一种全局状态,而可变的全局状态破坏了理想的程序。理想的程序理想情况下:整个程序是由一个个相互独立的组件(模块或函数或对象)组成,组件的设计遵循“高内聚低耦合”,

2022-05-29 21:34:21 266

原创 vector clear和 swap的区别

clear 和 swap 的区别

2022-05-29 15:38:11 610

原创 着色器添加颜色

来龙去脉着色器本身就是很好的小程序,但它们是整体的一部分,因此我们希望在单个着色器上具有输入和输出,以便我们可以移动东西。GLSL专门为此目的定义了inand关键字。out每个着色器都可以使用这些关键字指定输入和输出,以及输出变量与传递它们的下一个着色器阶段的输入变量匹配的任何位置。顶点和片段着色器虽然有点不同。顶点着色器应该接收某种形式的输入,否则它会非常无效。顶点着色器的输入不同,因为它直接从顶点数据接收输入。为了定义顶点数据的组织方式,我们使用位置元数据指定输入变量,以便我们可以在 CPU 上配

2022-03-24 22:45:22 1341

原创 着色器的介绍

着色器的使用现代 OpenGL 要求我们至少设置一个顶点和片段着色器主要步骤: 1: 顶点着色器创建 2:片段着色器创建 3: 着色器程序 4:使用着色器程序顶点着色器创建:着色器源代码: const char *vertexShaderSource = "#version 330 core\n" "layout (location = 0) in vec3 aPos;\n" "void main()\n" "{\n" " gl_Pos

2022-03-24 22:44:05 1199

原创 Gtest入门介绍(三 )

测试接口:比如当我们在单元测试、模块的接口测试时,当这个模块需要依赖另外一个/几个类,而这时这些个类还没有开发好(那名开发同学比较懒,呵呵),这时我们就可以定义了Mock对象来模拟那些类的行为。说得更直白一些,就是自己实现一个假的依赖类,对这个类的方法你想要什么行为就可以有什么行为,你想让这个方法返回什么结果就可以返回怎么样的结果EXPECT_CALL(mock_object, method(matcher1, matcher2, ...)).With(multi_argument_matcher)

2022-02-07 18:05:35 2894

原创 Gtest入门介绍(二)

测试夹具:对多个测试使用相同的数据配置如果您发现自己编写了两个或多个对相似数据进行操作的测试,您可以使用测试夹具。这允许您为多个不同的测试重用相同的对象配置。要创建夹具: 从 派生一个类::testing::Test。以 开始它的主体protected:,因为我们希望从子类中访问夹具成员。 在类中,声明您计划使用的任何对象。 如有必要,编写一个默认构造函数或SetUp()函数来为每个测试准备对象。一个常见的错误是拼写SetUp()为 Setup()small u-overri

2022-02-07 11:44:57 545

原创 Gtest入门介绍(一)

Gtest入门介绍简单使用: //test function int getdata(int n,int m) { return n+m; } TEST(getdata, demon) { EXPECT_EQ(1,1); // 等于 EXPECT_NE(1,2); //不等于 EXPECT_LE(1,2); // 小于等于 EXPECT_LT(getdata(1,-1),

2022-02-05 11:46:47 1195

原创 Qt: can‘t find -lGL error

执行:sudo apt install libgl1-mesa-dev

2022-01-27 20:14:52 222

原创 c++ threadpool

ThreadPool c++17采用多线程多对列,每个线程控制一个队列,替代老的多个线程公用一个队列。将任务拆分多个下发给每个线程,每个线程掌管 M(tasks) / N(threads)个任务M(tasks) / N(threads)个任务 公用一个队列。减少竞争。使用方法:初始化线程池 ThreadPool pool(4); //4个thread std::vector<std::future<int>>vec;添加任务for(int i =0;

2022-01-15 20:46:44 1605

原创 僵尸进程介绍

僵尸进程当一个子进程结束运行(一般是调用exit、运行时发生致命错误或收到终止信号所导致)时,子进程的退出状态(返回值)会回报给操作系统,系统则以SIGCHLD信号将子进程被结束的事件告知父进程,此时子进程的进程控制块(PCB)仍驻留在内存中。一般来说,收到SIGCHLD后,父进程会使用wait系统调用以获取子进程的退出状态,然后内核就可以从内存中释放已结束的子进程的PCB;而如若父进程没有这么做的话,子进程的PCB就会一直驻留在内存中,也即成为僵尸进程简单来说,当进程退出但是父进程并没有调用wait

2021-12-27 16:42:03 629

转载 信号集的使用

UNIX 系统主要信号以下就只列出主要的信号了:名称说明默认动作SIGABRT调用了abort()终止 + coreSIGALRMalarm()产生的终止SIGBUS硬件故障终止 + coreSIGCHLD子进程状态改变忽略SIGHUP连接断开终止SIGINTCtrl + C终止SIGKILL终止;不可捕获终止SIGPIPE向关闭的管道写终止SIGQUITCtrl + \终止 + coreSI

2021-12-12 16:21:48 120

原创 信号简单介绍

信号的基本额概念:信号(signal)机制是Linux系统中最为古老的进程之间的通信机制。Linux信号也可以称为软中断,是在软件层次上对中断机制的一种模拟。在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程发生了什么1. 进程间的常用通信手段1> 信号:通知,用来通知某个进程发生了一件事,以及参数传递2> 信号是异步发生,也被称

2021-12-12 13:04:53 604

原创 Qt breakpad编译使用

breakpad

2021-12-05 23:04:32 437

原创 std 迭代器增加,减少 指定偏移量

增加1: next(_InputIterator __x, typename iterator_traits<_InputIterator>::difference_type __n = 1)2: advance(_InputIterator& __i, _Distance __n)减少prev(_BidirectionalIterator __x, typename iterator_traits<_BidirectionalIterator>::differen

2021-10-26 13:29:24 381

原创 uninitialized_copy 和 copy_backward

解释:uninitialized_copy:从前往后复制copy_backward:从后往前复制案例······

2021-10-17 23:33:48 436

stl 标准库源码 免费不需要积分

stl 标准库源码 免费不需要积分

2022-05-29

cv2pdb.exe

根据exe 生成 对应的pdb 文件

2019-10-31

空空如也

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

TA关注的人

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