自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

个人技术博客

计算机相关技术

  • 博客(531)
  • 收藏
  • 关注

原创 程序员的自由修养(2)目标文件格式

目标文件是编译的中间产物,包含代码、数据、符号和重定位信息。COFF是Windows目标文件的标准格式,结构清晰,分为文件头、节区、符号表和重定位表。链接器的任务是合并多个目标文件,解析符号引用,生成可执行文件。现代格式_PE/ELF/Mach-O均从COFF演进而来,适应不同操作系统的需求。通过理解COFF目标文件的结构,可以更深入地掌握编译、链接的工作原理,为调试和性能优化奠定基础。

2025-05-07 23:32:09 958

原创 C++对象注册系统(1)实现原理

自动化:避免手动维护注册逻辑,实现「声明即注册」确定性:规避静态初始化顺序的不可控性扩展性:天然支持动态加载的插件架构高效性:利用链接器原生支持的低成本收集机制这种模式广泛用于游戏引擎(Unreal的UClass)、序列化框架(Protocol Buffers)等需要动态类型管理的系统。

2025-05-07 18:18:27 902

原创 Python 爬虫实战 | 企名科技

2025-04-24 23:20:36 1105

原创 C++ 新特性 | C++ 11 | bind

bind。

2025-04-23 10:07:23 408

原创 C++ 新特性 | C++ 11 | function

function。

2025-04-23 09:39:21 264

原创 OCCT 入门(4)数据结构

OCCT(Open CASCADE Technology)的基础数据结构是其几何建模能力的核心,主要围绕 边界表示法(BRep) 构建,同时包含几何、拓扑、算法和工具类等模块。

2025-04-21 17:59:20 385

原创 Python 入门教程(9)文件操作 | 9.1、文件基础操作

Python 提供了多种文件操作方法,主要用于。在 Python 中写入文件时,可以通过。来指定文件的编码格式(如。函数打开文件,需指定。在 Python 中,,具体取决于你的需求。手动关闭文件(若未用。

2025-04-21 13:58:29 689

原创 OCCT 入门(3)核心模块与架构

OpenCASCADE Technology (OCCT) 采用模块化分层架构,核心模块分为基础层建模层和可视化层,各层协同工作以提供完整的几何建模能力。

2025-04-15 17:56:25 610

原创 OCCT 入门(1)OCCT 简介

OCCT 是一个开源跨平台的三维几何建模内核,广泛应用于 CAD/CAM/CAE、工业仿真、3D 打印等领域(如 FreeCAD、KiCAD 等软件的核心引擎)。提供下面这些基本功能几何建模基础实体(立方体、圆柱、球体等)高级曲线/曲面(NURBS、Bezier、B样条)布尔运算(并/差/交)、特征操作(拉伸/旋转/扫掠)数据交换支持STEP、IGES、STL等工业格式导入导出。可视化与交互基于OpenGL的3D渲染,支持选择、高亮、动态交互(AIS框架)。网格处理。

2025-04-15 17:36:23 341

原创 C/C++ 知识点:解释型语言与编译型语言

解释型语言编译型语言Python(解释型)执行方式:C++(编译型)执行方式:总结:

2025-04-11 11:18:16 346

原创 C/C++ 知识点:静态语言与动态语言

静态语言重安全与性能,动态语言重开发效率与灵活性。

2025-04-11 10:23:38 432

原创 C++ 新特性 | C++ 11 | 万能引用与完美转发

万能引用是一种能够绑定到左值、右值、const和非const对象的引用。T &&其中T是一个推导类型(通过模板参数推导或auto推导)。

2025-04-07 11:15:47 283

原创 C++ 新特性 | C++ 11 | 使用 std::forward 实现完美转发

是 C++ 完美转发(Perfect Forwarding)的核心工具,它与万能引用配合使用,保持参数原始的值类别(左值/右值)。

2025-04-03 09:35:49 335

原创 C++ 新特性 | C++ 11 | 引用折叠机制

引用折叠是C++11引入的类型推导规则,用于处理多重引用嵌套的情况,是现代C++模板编程的重要基础机制。

2025-04-02 17:58:40 311

原创 C++ 新特性 | C++ 11 | std::move

std::move的核心工作就是通过类型转换将一个值标记为"可移动的",让编译器知道可以使用移动语义而非拷贝语义。它本身不移动任何数据,只是为移动操作创造条件。实际的资源转移是由对应类的移动构造函数或移动赋值运算符完成的。

2025-04-02 17:42:07 586

原创 C++ 新特性 | C++ 11 | 移动语义

移动语义通过。

2025-04-01 17:54:07 283

原创 C++ 新特性 | C++ 11 | 左值、右值与将亡值

左值:有名字的变量;右值:临时的值;将亡值:快被移动的值。左值引用 (:操作原变量;右值引用 (&&:高效“偷”资源。

2025-04-01 17:51:06 551

原创 OCCT 入门(2)Windows平台编译OCCT

【代码】OCCT(2)Windows平台编译OCCT。

2025-03-31 17:53:53 528

原创 Python 爬虫(5)Beautiful Soup 4 实战

BeautifulSoup 是一个用于从 HTML 或 XML 文件中提取数据的 Python 库。它可以将复杂的 HTML 或 XML 文档转化为树形结构,使得开发者能够轻松地遍历、搜索和修改文档内容。借助 BeautifulSoup,我们能够迅速定位到所需的数据,如特定的标签、属性或文本信息。自动将输入文档转换为Unicode编码,输出文档转换为UTF-8编码。支持多种解析器(如lxml、html5lib等)。提供简单易用的导航、搜索和修改文档树的方法。能够处理不规范的HTML文档。

2025-03-30 22:38:45 1144

原创 Visual Studio | 性能探测器

Visual Studio(VS)提供的性能探测器(Performance Profiler)是一款强大的工具,它能够帮助开发者分析应用程序的性能,找出性能瓶颈,进而优化代码。

2025-03-27 17:28:01 653

原创 Python 爬虫(4)HTTP协议

HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于在客户端和服务器之间传输超文本(如HTML文件)。HTTP协议是Web的基础,它定义了客户端如何请求资源以及服务器如何响应这些请求。

2025-03-21 09:28:51 1040

原创 Python 爬虫(3)requests包

在Python爬虫开发中,

2025-03-20 11:16:36 1052

原创 Python 爬虫(2)Web请求

Web请求是互联网通信的基础,它允许客户端(如浏览器)与服务器之间进行数据交换。理解Web请求的原理对于开发Web应用、优化性能以及解决网络问题至关重要。本文将详细介绍Web请求的基本原理,包括其组成部分、工作流程以及常见的协议和技术。

2025-03-18 14:39:18 1034

原创 几何基础(1)三角函数

常见的三角函数包括正弦函数(sin)、余弦函数(cos)、正切函数(tan)、余切函数(cot),下面介绍下这些函数的用法。

2025-03-17 10:18:39 411

原创 OpenGL(4)着色器

着色器(Shader)是运行在 GPU 上的小程序,用于处理图形渲染过程中的特定任务。传统的 OpenGL 渲染流程中,CPU 需要承担大量的图形计算任务,而引入着色器后,将这些计算任务转移到 GPU 上,利用 GPU 的并行计算能力,大大提高了渲染效率。当 OpenGL 进行图形渲染时,会将顶点数据(如顶点坐标、颜色、纹理坐标等)传递给着色器进行处理。着色器根据预设的算法对这些数据进行计算和转换,最终生成像素的颜色值,用于显示在屏幕上。整个渲染过程可以分为多个阶段,每个阶段由不同类型的着色器负责处理。

2025-03-11 17:45:31 1743

原创 OpenGL(3)对象

在 OpenGL 中,有许多常见的对象,它们在图形渲染流程中各自承担着重要的角色。下面将详细介绍几种常见对象及其工作原理。

2025-02-28 09:23:29 263

原创 C++ 新特性 | C++ 14 | enable_if_t 模版

是 C++14 引入的一个模板元编程工具,它是的便捷别名。定义在头文件中,主要用于在编译时根据条件来启用或禁用某个模板实例化,从而实现更灵活的泛型编程。下面详细介绍的作用和使用场景。

2025-02-26 16:52:10 693

原创 C++ 编程基础(8)模版 | 8.4、类型萃取

可以通过模板特化自定义类型萃取。// 输出 0 (false)// 输出 1 (true)return 0;C++中的类型萃取是模板元编程的基础工具,通过头文件提供的工具,可以在编译时获取和操作类型信息,实现更灵活和高效的代码。

2025-02-25 17:47:11 325

原创 OpenGL(2)基于Qt做OpenGL开发

确保你已经安装了 Qt 开发环境(包含 Qt Creator),并且支持 OpenGL 开发。在创建 Qt 项目时,选择 “Qt Widgets Application” 或 “Qt Quick Application”,根据项目需求进行选择。类来创建一个 OpenGL 窗口。在 Qt 中,可以通过继承。

2025-02-20 17:27:49 609

原创 OpenGL(1)基础知识

OpenGL本身并不是一个API,它仅仅是一个由Khronos组织制定并维护的规范。OpenGL规范严格规定了每个函数该如何执行,以及它们的输出值。至于内部具体每个函数是如何实现(Implement)的,将由OpenGL库的开发者(通常是显卡的生产商)自行决定。

2025-02-18 17:30:50 460

原创 OpenGL常用函数

告诉 OpenGL 如何解析顶点缓冲区对象(VBO)中存储的顶点数据。

2025-02-10 17:52:35 268

原创 C++ STL(8)map

std::map是 C++ 标准模板库中的一个关联容器,它存储的元素是键值对(std::pair<Key, T>),其中 Key 表示键的类型,T 表示与键关联的值的类型。通常是基于红黑树(Red-Black Tree)实现的。元素按照键的顺序存储。键必须支持 < 运算符(或提供自定义比较函数),这样容器会根据键的大小自动排序元素。默认是按照键的升序排列元素,也可以提供自定义的比较函数或比较对象来改变排序规则。提供双向迭代器,允许正向和反向遍历元素。插入、删除和查找操作的时间复杂度为。

2025-01-22 16:11:14 432

原创 【无标题】

定义顶点属性数组的数据格式和布局,告诉 OpenGL 如何从当前绑定的顶点缓冲对象(VBO)中读取顶点数据并将其传递给顶点着色器。

2025-01-15 17:25:43 288

原创 Python 爬虫 (1)基础 | XHR

XHR,全称XMLHttpRequest,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它允许网页的JavaScript代码与服务器进行异步通信,即在发送请求后,浏览器不会阻塞用户的后续操作,而是等待服务器响应后再处理数据。XHR是AJAX(Asynchronous JavaScript and XML)技术的核心,尽管名称中包含“XML”,但实际上它并不限于传输XML数据,也可以传输JSON、HTML、纯文本等多种格式的数据。

2024-12-09 09:47:25 1212 1

原创 Python 入门教程(2)搭建环境 | 2.4、VSCode配置Node.js运行环境

一、VSCode配置Node.js运行环境。

2024-12-03 22:47:33 2399 1

原创 Python 爬虫 (1)基础 | Request与Response

在Python编程中,经常需要从互联网上获取或发送数据,这涉及到了网络编程。而在网络编程中,HTTP请求是不可或缺的一部分。Python的Requests包是一个非常强大且易于使用的工具,它能够帮助我们轻松地发送HTTP请求并处理响应。

2024-12-01 08:38:11 885

原创 Python 入门教程(2)搭建环境 | 2.3、VSCode配置Python开发环境

Visual Studio Code(简称VSCode)以其强大的功能和灵活的扩展性,成为了许多开发者的首选。本文将详细介绍如何在VSCode中配置Python开发环境。

2024-11-28 14:58:39 14865 3

原创 Python 爬虫 (1)开发者工具 | 功能简介

一、功能简介

2024-11-24 09:35:12 136

原创 Python 爬虫 (1)基础 | 基础操作

安装JS环境:https://www.jb51.net/python/307069k7q.htm。

2024-11-22 23:19:17 1127

原创 Python 爬虫 (1)基础 | 目标网站

一、目标网站1、加密网站1.1、带关键字企名片:https://wx.qmpsee.com/articleDetail?id=feef62bfdac45a94b9cd89aed5c235be

2024-11-22 10:16:16 622

MyTableView

MyTableView

2024-10-30

C++多线程内存顺序实现原理图

C++多线程内存顺序实现原理图

2024-04-26

pre-commit在提交前对代码进行检查

pre-commit

2024-04-07

代码风格审查工具cpplint

cpplint

2024-04-07

Git 配置BCompare工具

Git 配置BCompare工具

2024-04-07

Qt编程基础 - 第六章-窗体 - 6.4、QWidget 自定义右键菜单

Qt编程基础 - 第六章-窗体 - 6.4、QWidget 自定义右键菜单

2023-08-22

空空如也

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

TA关注的人

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