最强玩者
码龄7年
关注
提问 私信
  • 博客:736,454
    社区:1
    736,455
    总访问量
  • 103
    原创
  • 12,251
    排名
  • 804
    粉丝
  • 4
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2018-06-13
博客简介:

比比的博客

查看详细资料
  • 原力等级
    当前等级
    4
    当前总分
    970
    当月
    2
个人成就
  • 获得499次点赞
  • 内容获得126次评论
  • 获得2,135次收藏
  • 代码片获得526次分享
创作历程
  • 3篇
    2025年
  • 7篇
    2024年
  • 6篇
    2023年
  • 7篇
    2022年
  • 3篇
    2020年
  • 73篇
    2019年
  • 19篇
    2018年
成就勋章
TA的专栏
  • c++
    4篇
  • C#
    4篇
  • 机器视觉
    3篇
  • 素材
  • 软件开发
    2篇
  • pcl
  • 视觉硬件
  • Qt
  • 机器人学
  • winform
    4篇
  • 图像算法
  • 双系统安装
  • web
    11篇
  • 深度学习
    7篇
  • 人工智能
    12篇
  • Python
    7篇
  • app
    2篇
  • 大数据
    36篇
  • java
    2篇
  • 运维
    3篇
  • 心灵鸡汤
  • linux
    4篇
  • 算法
    1篇
  • 计算机网络
    1篇
  • 前端
    1篇
创作活动更多

新星杯·14天创作挑战营·第9期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛! 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见 https://bbs.csdn.net/topics/619626357 2、文章质量分查询:https://www.csdn.net/qc

475人参与 去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Python 类型检查

今天我们来聊聊Python中的类型标注 (Type Annotation)。
原创
发布博客 2025.01.21 ·
905 阅读 ·
19 点赞 ·
0 评论 ·
13 收藏

Python的泛型(Generic)与协变(Covariant)

今天咱们聊聊Python类型标注中的(Generic),与不了解类型标注的小伙伴,可以先看一看我的上一篇文章 “Python类型检查”
原创
发布博客 2025.01.21 ·
995 阅读 ·
9 点赞 ·
0 评论 ·
27 收藏

python软件工程环境升级总结

然而我发现,Pylance提示的错误和警告太多了(和代码的规范程度相关,代码越贴近Pylance的规范,提示项越少,并不能直接说明代码的水平好坏!通过设置参数来减少提示项无果(单单一个"reportGeneralTypeIssues": "error"就会蹦出来3000+个提示,已经无法更细粒度的设置了),我尝试更新Pylance版本来减少没有大的影响的提示项,发现更新版本后提示确实少了很多,变成了140+项。,配置方便,提示明确,没有太多的“无关紧要”的提示(相比于另外两个工具而言)。
原创
发布博客 2025.01.07 ·
352 阅读 ·
5 点赞 ·
0 评论 ·
8 收藏

Python类型检查的重要性?

动态类型语言在开发阶段为开发者带来了诸多便利,但是随着项目不断地增大,复杂度越来越高,功能重构和扩展时却越来越受动态类型这个特性的影响,夸张来说,几乎无法去做进一步的工作。考虑及时为自己的Python项目添加类型检查是非常有必要的。另外,Pymy或者Pylance等这类工具也可以检查出一些潜在的逻辑错误,帮助我们产出更优质的代码!1. 使用 Mypy 检查 30 万行 Python 代码,总结出 3 大痛点与 6 个技巧!2. 在大型项目上,Python 是个烂语言吗?
原创
发布博客 2024.10.31 ·
210 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

优秀代码的六大戒律:编写经得起时间考验的代码

以下是我在美国和国外的大公司和小公司担任工程师期间发现的一些事情,它们似乎与可维护的“好”软件相关。由于它相对较新,我认为我们尚未就“好代码”的正确定义达成共识,因为该定义仍在不断发展。与大多数艺术和科学相比,计算机科学在很多方面仍像个蹒跚学步的孩子,走路时会撞到墙上,被自己的脚绊倒,偶尔还会把食物扔到桌子上。我们可能还无法结束这场争论,但好的软件似乎总是符合代码的某些特定品质。在本文中,自由软件工程师 Zachary Goldberg 向我们介绍了六个简单的想法,可以帮助您制作更好、更易于维护的软件。
原创
发布博客 2024.08.01 ·
269 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

防御和进攻编程

同样,您可能应该处理不是错误的错误。大多数情况下,在这些情况下崩溃是不合理的。一些不太重要的检查是检查函数参数或在简单操作后不断检查状态之类的检查。然而,在其他编程语言中,它们不会使程序崩溃。不是为了发现错误的检查属于“正常编程”,而不是“防御性编程”。毕竟,如果你的源代码没有经过充分测试或不易理解,它可能会存在错误。然而,无论你是否进行防御性编程,这都是你应该做的事情。防御性编程是许多程序员都听说过的一个术语,对于某些程序,防御性编程是必不可少的。大多数程序的经验法则是在这些错误上崩溃,而不是处理它们。
原创
发布博客 2024.07.24 ·
988 阅读 ·
9 点赞 ·
0 评论 ·
9 收藏

基于Crashpad的程序崩溃记录以及调试方法

Crashpad是Google开发的一个开源跨平台崩溃报告系统。其主要功能是在程序发生崩溃时能够捕获程序的崩溃信息并生成崩溃报告,这样开发人员可以更快速地定位和解决程序的问题。Crashpad支持各种操作系统,包括Windows、macOS和Linux等。Crashpad的基本工作原理是分为handler和client两部分。Handler在一个独立于客户端的进程中运行,负责在崩溃时对客户端进程的状态进行快照并保存为转储文件(dmp)。
原创
发布博客 2024.05.17 ·
3078 阅读 ·
10 点赞 ·
0 评论 ·
25 收藏

python软件开发遇到的坑-相对路径文件读写异常,不稳定

1. os.chdir()会影响那些使用相对路径读写文件的程序,使其变得不稳定,默认情况下,当前工作目录是主程序所在目录,使用os.chdir会将当前工作目录修改到其他路径。
原创
发布博客 2024.05.07 ·
445 阅读 ·
5 点赞 ·
0 评论 ·
2 收藏

如何使用 WinDbg 修复 C/C++ 中的内存泄漏

它是 Microsoft 提供的适用于内核和用户空间的强大调试器,也是查找内存泄漏的绝佳工具。Deleaker 有一个直观的 UI:开发人员不需要知道无限的命令列表来重复键入它们,希望找到泄漏内存的地址。它是一个带有 GUI shell 的控制台应用程序,一个强大的调试器,只要您知道正确的命令即可。此外,您无权访问源代码。有了泄漏内存的地址,我们可以使用 WinDbg 的强大功能来获取每个特定内存分配的调用堆栈。通过一些努力,即使在具有大量代码库的最复杂的本机应用程序中,也可以减少或消除内存泄漏的数量。
原创
发布博客 2024.03.05 ·
1245 阅读 ·
30 点赞 ·
1 评论 ·
8 收藏

如何检测C/C++中的内存泄漏?

WinDBG 是 Windows 应用程序的调试器,可以读取存储在调试堆中的附加信息。对于 64 位进程来说,它是 8 TB,但实际上内存受到硬件的限制,因此,它要少得多。虽然 C++ 运行时库仅捕获特定源文件中 C++ 函数造成的泄漏,但 Deleaker 在进程级别工作,存储所有分配。乍一看,一个小的忘记分配并不是一个大问题,但进行一百万次后,它很快就会成为一个严重的错误。另一个工具是 WinDBG,它是一个可以读取调试堆的多用途调试器。不幸的是,它的功能有限,而且WinDBG 的UI 并不方便。
原创
发布博客 2024.03.05 ·
842 阅读 ·
10 点赞 ·
1 评论 ·
19 收藏

优质文章集合

开发人员如何停止学习:专家初学者的崛起。
原创
发布博客 2023.08.04 ·
284 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

单元测试的 8 个好处

它将最小的可测试软件与代码的其余部分隔离开来,并确定它的行为是否完全符合您的预期。单元测试已经证明了它的价值,因为在使用过程中可以识别出很大比例的缺陷。它允许测试过程自动化,减少发现应用程序更复杂部分中包含的错误的难度,并增强测试覆盖率,因为对每个单元都给予了关注。当然,较早检测到的错误更容易修复,因为较晚检测到的错误通常是多次更改的结果,并且您并不真正知道哪一个导致了该错误。由于单元测试是由在集成之前测试各个代码的开发人员执行的,因此可以很早就发现问题并可以立即解决,而不会影响代码的其他部分。
原创
发布博客 2023.08.02 ·
306 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

通过C++/CLI将C++与C#进行联合编程

3.ref类的函数(方法)参数可以直接使用Native C++类类型,但是C#无法理解这些参数。1.ref类的变量(字段)不能使Native C++类类型,可以是指向Native C++类类型对象的指针。1.C#可以调用Native C++类类型,无论使用Pinvoke还是其他方法,Native类类型作为参数都很难处理。可以使用C++/CLI在C++和.Net之间联合编程,C++/CLI是一个两栖模块,它具有如下特点。C#可以调用Native C++类,也可以调用C++/CLI类,但是区别非常大。
原创
发布博客 2023.04.03 ·
517 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C# ref struct和ref class的特点

比如图片,如果已知图片的原始格式,就可以通过 Span 对内存中 Image 类所提供的地址来获取这个连续的 byte[] 的指针,并通过 Span 的方法可以进行数据拆分,比如从 32 ARGB 中提取每个 ARGB 的 Span ( 依然是个指向原始数据片段的指针 )③ref struct 主要是用来减少GC,比如声明变量的时候可以用它来在不同对象中传递指向连续内存地址的数据,虽然会降低灵活性,不如List之类的工具功能强大,但在处理一些特定的数据的时候能给你更高的效率。
原创
发布博客 2023.03.31 ·
709 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CPP和Net交互语法速览

C++设计,他会修改追加C#传递的,这里就不用传递引用直接可以传递修改。C#传递引用数组到CPP,CPP也可以扩展C#的数组。std::string和String^可以相互转换。本文通过一些demo来记录常用的参数交互,请记住。vector可以和C#的list相互转换。C#传递后被C++修改,然后打印出来。这个可以直接修改里面的内存。生成的C#的函数签名如下。
原创
发布博客 2023.03.14 ·
292 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2D机器视觉 - 放大倍率和像素精度

放大倍率和像素精度
原创
发布博客 2023.02.17 ·
357 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

C++ 对象克隆关键点

C++对象克隆
原创
发布博客 2022.11.25 ·
1077 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Halcon image_points_to_world_plane和image_to_world_plane分析

个人分析,这个算子可以应用在倾斜拍照时,纠正图像视角后做图像识别,而测量的话,因为图像是算法模拟出的并非相机直接输出,所以之前的相机内参是无效的或者说不准确的,如果转换后要做测量定位,需要重新识别标定板得到标定板Pose,然后根据图像尺寸创建一个内参,调用image_points_to_world_plane转换坐标。以下X1和Y1是转换前的世界坐标,X2和Y2是转换后的世界坐标,发现在标定板倾斜程度很大的情况下,image_to_world_plane之后,世界坐标还准确一些...
原创
发布博客 2022.11.09 ·
1805 阅读 ·
0 点赞 ·
0 评论 ·
10 收藏

C#开发笔记:[MethodImpl(MethodImplOptions.AggressiveInlining)]内联函数的声明和意义

在C#中我们通常定义以下函数来求两个整数的最大值:复制代码代码如下:int max(int a, int b){return a > b ? a : b;}为这么一个小的操作定义一个函数的好处有:① 阅读和理解函数 max 的调用,要比读一条等价的条件表达式并解释它的含义要容易得多② 如果需要做任何修改,修改函数要比找出并修改每一处等价表达式容易得多③ 使用函数可以确保统一的行为,每个测试都保证以相同的方式实现④ 函数可以重用,不必为其他应用程序重写代码虽然..
原创
发布博客 2022.03.24 ·
3728 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

C++学习笔记二:无法解析的外部符号 “public: virtual struct QMetaObject const * __cdecl FormCloudFilter::metaObject(v

严重性 代码 说明 项目 文件 行 禁止显示状态错误 LNK2001 无法解析的外部符号 "public: virtual struct QMetaObject const * __cdecl FormCloudFilter::metaObject(void)const " (?metaObject@FormCloudFilter@@UEBAPEBUQMetaObject@@XZ) XR3DVision D:\window_workspace\X...
原创
发布博客 2022.01.19 ·
3865 阅读 ·
17 点赞 ·
3 评论 ·
13 收藏
加载更多