自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 cursor windows配置c++ 开发环境 (cmake cl )

只需要下载新版本的cursor,在应用市场搜索c++,即可安装扩展了,可以注意到扩展的作者和vscode上的不再一样了。打开cmake官网,下载windows版本cmake,我这里选择了msi安装包。完成安装后,就可以通过cmake插件去运行和debug代码了。在cursor插件中搜索cmake,安装以下两个插件。发现cursor中的c++扩展不可用,更新后解决问题。下载软件包后安装即可。

2025-05-30 20:11:46 491

原创 PyBind11 Buffer Protocol 深度解析:高效C++与Python数据交换的艺术

PyBind11的Buffer Protocol为C++与Python的高性能数据交换提供了优雅的解决方案。实现零拷贝数据传输无缝集成NumPy生态保持类型安全和内存安全充分发挥C++的性能优势掌握这些技巧后,你将能够构建出既高效又易于使用的Python扩展模块,完美桥接高性能计算与Python的灵活性。

2025-05-30 15:43:30 823

原创 Pybind11 numpy实战

本文介绍了Pybind11与NumPy的高效交互方案。主要内容包括:1) 环境配置方法,需Pybind11和NumPy支持;2) 基础数组操作,如传递、创建和返回NumPy数组;3) 高级技巧,包括无复制数据访问和视图创建;4) 多维数组处理方法;5) 关键注意事项,如内存连续性和GIL管理。通过Pybind11可结合C++的高性能与Python的易用性,适用于科学计算等场景。文章提供了矩阵乘法等完整示例,并推荐了扩展阅读资料。

2025-05-30 15:15:10 520

原创 《掌握 Pybind11:Python/C++ 类型系统映射与类导出技巧》

Pybind11类绑定摘要:文章介绍了使用Pybind11绑定C++类到Python的详细方法。基本示例展示了类定义、构造函数和方法的绑定过程。高级特性包括构造函数重载、成员变量绑定、静态成员、继承、运算符重载和枚举处理。类型转换部分详细列出了Python与C++类型对应关系及注意事项,强调自动转换、自定义类型支持、STL容器互操作和NumPy集成等关键功能。全文提供代码示例和表格说明,是Pybind11类绑定的实用指南。

2025-05-30 13:50:11 373

原创 C++与Python高效融合:pybind11实战指南

文章摘要: 本文介绍了使用pybind11将C++推理代码封装为Python模块的方法。首先通过pip安装pybind11,并通过简单示例(如加法函数)演示基础绑定流程。重点分析了PYBIND11_MODULE宏的作用及类型提示存根文件(.pyi)的编写,以提升IDE体验。随后详细说明通过CMake构建动态库的配置方法,强调Python版本一致性对跨环境使用的影响。最后给出实际Demo,展示如何将TensorRT推理类(如KickInfer)绑定到Python,实现模型加载、预处理和推理功能。全文涵盖从安装

2025-05-30 13:34:54 1173

原创 C++命令行参数解析:getopt详解

本文介绍了C/C++中getopt库的基本功能与使用方法。该库用于解析命令行参数,支持短选项(如-h)和参数绑定(如-f filename),并通过示例代码展示了核心用法。文章还提及了扩展功能getopt_long(支持长选项如--help)和Boost.Program_options等替代方案,最后强调了平台兼容性和状态重置等注意事项。全文简明扼要地覆盖了从基础到进阶的命令行参数解析技术。(149字)

2025-05-28 15:31:37 362

原创 解决:命令行能正常运行,但使用pycharm运行import tensorrt代码报错ImportError: libnvinfer.so.8: cannot open shared object f

解决:命令行能正常运行,但使用pycharm运行import tensorrt代码报错ImportError: libnvinfer.so.8: cannot open shared object file

2024-09-04 13:35:45 497 3

原创 python进阶:了解函数式编程(Map、Filter 和 Reduce)

在python中函数也是一等对象。或者说,python中一切都为对象。可以把函数作为参数传递给函数,也可以把函数作为返回值。所以,在一些设计模式中,可以用函数去替代对象。在现代python中,map,filter,reduce很少用到了,因为python的列表生成式,可以实现和他们相同的工作,并且更易理解。不过理解这些函数,对我们理解函数式编程也是有好处的。很多使用for的方式,能使用这些去改写。

2024-04-14 15:44:47 410 1

原创 记录:使用python解压乱码

使用解压后乱码的解决过程在参考上述文章的解决方法后,可能是我们zipfile包版本不同,抛出错误BadZipFile。定位到代码位置,发现对文件名进行了一个比较,不同则会抛出错误。

2024-04-12 11:16:42 483

原创 python进阶:异常处理只用来跳过错误?

当标准的exception不能满足你的需求时,你可以选择自定义exception类型。passraise LunchError("程序启动报错")

2024-04-11 11:23:17 427 1

原创 python进阶:单元测试——保证代码的可重用性

需要为搁置很久的代码修改功能,你是选择在原有代码上重构,还是重新写一份代码?因为有时候重构的时间,可能要比重写一份的时间要长,各种差错要处理,重构完可能也比较乱。因此,大家对于去修改与重构是比较逃避和排斥的,对自己曾经写的代码也不够有信心。本文只提供一个视角,详细的使用方法可以参考文档和其它博客。

2024-04-10 21:36:16 354 1

原创 python进阶:提高代码控制能力,必须知道的19个特性

【代码】python进阶:提高代码控制能力,必须知道的19个特性。

2024-04-09 12:47:59 961 1

原创 python进阶:编写更健壮的python代码

直到有一次,在对一个比较大的项目进行修改时,各种变量名让人眼花缭乱,不知所谓。本来很小的改动,也是频繁报错,需要缝缝补补很长时间。在最开始接触python时,我是比较喜欢不需要指定变量类型这一特性的,代码也是怎么快速,怎么随意,怎么来。本文只做一些基本常用的介绍,给大家提供一个思路,有个全局的概览。网上有很多其它文章写的很深入详细,我就不多。按需使用assert,可以提高代码的健壮性。不过,当时也乐在其中,傻呼呼的。可以看到使用对象类型也比较简单,对象类型我觉得是比较有趣的,,这给开发提供极大便利。

2024-04-08 22:30:47 449

原创 必须知道的python和C的10个区别

python进阶知识,python和c语言的区别,python的的引用变量和函数传参

2024-04-07 19:47:44 602

原创 ubuntu 22.04 将可执行文件(如pycharm.sh)加入到应用程序栏里

ubuntu 22.04 将可执行文件(如pycharm.sh)加入到应用程序栏里

2024-03-31 09:07:30 485

转载 Windows内存管理

 本文主要内容:1.基本概念:物理内存、虚拟内存;物理地址、虚拟地址、逻辑地址;页目录,...

2020-04-20 02:49:48 323

空空如也

空空如也

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

TA关注的人

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