王晓华-吹泡泡的小猫
码龄26年
求更新 关注
提问 私信
  • 博客:2,214,485
    社区:5,044
    2,219,529
    总访问量
  • 203
    原创
  • 3,483
    排名
  • 9,858
    粉丝
  • 216
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
加入CSDN时间: 2000-01-01

个人简介:20+ 软件领域从业经验,关注软件开发团队能力提升和敏捷开发,目前全职从事软件相关的培训、授课和咨询

博客简介:

oRbIt 的专栏

博客描述:
从明天起,做一个幸福的人,喂马、劈柴、周游世界。。。
查看详细资料
个人成就
  • 博客专家认证
  • 获得1,831次点赞
  • 内容获得1,102次评论
  • 获得2,181次收藏
  • 代码片获得157次分享
  • 原力等级
    原力等级
    5
    原力分
    1,701
    本月获得
    4
创作历程
  • 26篇
    2025年
  • 16篇
    2024年
  • 2篇
    2022年
  • 6篇
    2021年
  • 51篇
    2020年
  • 2篇
    2019年
  • 1篇
    2018年
  • 1篇
    2017年
  • 2篇
    2016年
  • 7篇
    2015年
  • 1篇
    2014年
  • 5篇
    2013年
  • 18篇
    2012年
  • 12篇
    2011年
  • 2篇
    2010年
  • 2篇
    2009年
  • 17篇
    2008年
  • 4篇
    2007年
  • 10篇
    2006年
  • 22篇
    2005年
  • 8篇
    2004年
成就勋章
TA的专栏
  • 算法设计实战 50 讲
    付费
    50篇
  • 现代 C++
    43篇
  • 技术随笔
    33篇
  • 算法系列
    35篇
  • oRbIt的开源软件
    23篇
  • ATL/WTL
    10篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 1

TA参与的活动 0

TA的推广
兴趣领域 设置
  • 人工智能
    深度学习
  • 软件工程
    开源重构设计模式
创作活动更多

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

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

90人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

C++ 的 out_ptr 和 inout_ptr

C++ 智能指针在与需要 T** 或 T&* 参数的 C 风格函数交互时,传统解决方案如代理类虽能缓解问题,但存在各种问题。C++ 23 引入了 out_ptr_t 和 inout_ptr_t 智能指针适配器,通过 std::out_ptr() 和 std::inout_ptr() 简化使用,实现了与 C 风格 API 的安全交互。
原创
博文更新于 2025.05.23 ·
875 阅读 ·
15 点赞 ·
0 评论 ·
16 收藏

C++ 的几个 destroy 函数

destroy() 函数的使用都涉及取对象的地址,在使用时建议使用 std::addressof() 函数取对象的地址,而不是简单使用取地址运算符,因为取地址运算符经常被重载为自定义版本,某些情况下可能返回的不是对象自身的实际地址。
原创
博文更新于 2025.05.06 ·
994 阅读 ·
10 点赞 ·
0 评论 ·
19 收藏

C++ 的 Tag Dispatching 技术

编译期需要进行的重载函数分派可以考虑用 Tag Dispatching,运行期间的分派可以考虑 C++ 对象的抽象和分派方式。对数据的额外处理就不适合在编译期间决定,因为数据是运行期变化的。总之,Tag Dispatching 用于定制行为,不是定制数据。
原创
博文更新于 2025.05.06 ·
968 阅读 ·
28 点赞 ·
0 评论 ·
14 收藏

C++ 的 trivially relocatable

移动构造也是有开销的,并且对象移动之后,源对象依然是合法状态,它还需要析构,在一些情况下,这样标准的移动操作完全没必要。存在比移动更快的方式,那就是按位复制,只需将对象的数据复制到另一个地方,就可以在那个地方“还原”出这个对象,这可比普通的移动更有吸引力。
原创
博文更新于 2025.04.25 ·
1060 阅读 ·
29 点赞 ·
0 评论 ·
25 收藏

C++ 17 带初始化的 if 和 switch 语法

将初始化和条件判断写在一行代码中,用更少的代码实现更多的语义,可以使代码看起来更简短,也能更好地控制变量作用域
原创
博文更新于 2025.04.25 ·
583 阅读 ·
22 点赞 ·
0 评论 ·
17 收藏

C++ 的 if-constexpr

if-constexpr 语法是 C++ 17 引入的新语法特性,也被称为常量 if 表达式或静态 if(static if)。引入这个语言特性的目的是将 C++ 在编译期计算和求值的能力进一步扩展,更方便地实现编译期的分支选择动作。
原创
博文更新于 2025.03.24 ·
1612 阅读 ·
30 点赞 ·
0 评论 ·
22 收藏

C++ override 说明符

override和final作为说明符号,并不是保留的 C++ 关键字,它们只在它们能起作用的地方起说明作用,如果在其他地方出现,它们和普通的符号没有区别
原创
博文更新于 2025.03.18 ·
379 阅读 ·
3 点赞 ·
0 评论 ·
3 收藏

C++ 11 的返回值类型后置语法

C++ 11 引入了一种新的语法形式,就是返回值类型后置(trailing-return-type)语法,也被称为跟踪返回值类型语法或后置返回值类型。
原创
博文更新于 2025.03.14 ·
845 阅读 ·
12 点赞 ·
0 评论 ·
17 收藏

C++ 的位域(BitFields)

位域的定义使用 struct 关键字,但是和定义 struct 不同的是,它需要为每个分量(属性)指定长度,但是每个分量可以和数据结构中其他正常的元素一样使用和初始化。
原创
博文更新于 2025.03.12 ·
1239 阅读 ·
29 点赞 ·
0 评论 ·
22 收藏

C++ 的时间库之八:format 与格式化

在《C++ 的时间库之五:time_point》和《C++ 的时间库之三:Duration》两篇文章中,我们增补了关于字符串格式化输入和输出的内容,但是因为篇幅关系,没有展开详细介绍相关的格式支持,所以本篇的目的就是全面介绍 format 库对时间库的格式化支持。
原创
博文更新于 2025.03.10 ·
1107 阅读 ·
12 点赞 ·
0 评论 ·
9 收藏

C++ 的时间库之七:自定义时钟

chrono 库定义了很多时钟,仿照这些时钟的实现代码做一个自定义的 clock 非常简单。
原创
博文更新于 2025.03.04 ·
984 阅读 ·
12 点赞 ·
0 评论 ·
28 收藏

C++ 的时间库之六:日历和时区

C++ 11 的时间库提供了各种时钟、时间点以及时间间隔的计算与表达,但是却没有提供日期相关的类型,也没有提供与时区有关的本地时间转换等支持组件,所以用起来不是很顺手。直到 C++ 20 终于补齐了这块短板,时间库具备是时间、日期和时区的完整支持
原创
博文更新于 2025.02.27 ·
905 阅读 ·
23 点赞 ·
0 评论 ·
13 收藏

C++ 的时间库之五:time_point

C++ 的时间点有两个关键标识,一个是时间点计时用的时钟类型,另一个是记录时间点从时钟的纪元起点开始的时间间隔类型。时钟类型决定了时间点的计时方式和时间纪元起点,时间间隔类型决定这个时间点的计时单元是毫秒还是天。
原创
博文更新于 2025.02.26 ·
1093 阅读 ·
20 点赞 ·
0 评论 ·
17 收藏

C++ 的时间库之四:Clock

除了时间纪元的起点不同,不同的系统内时间间隔的计数精度也不一样,这就造成了计算机系统中时间记录方式的差异。为了区分这种差异,C++ 11 开始引入了系统时钟类型的概念,不同的时钟,对时间的理解和计算也不一样。
原创
博文更新于 2025.02.25 ·
729 阅读 ·
14 点赞 ·
0 评论 ·
13 收藏

C++ 的时间库之三:Duration

C++ 的时间库主要有三部分组成,分别是时钟类型、时间点和时间间隔。时钟类型决定了计时方式,时间纪元的起点,时间间隔用于记录一段持续时间的长短,时间点是一种时钟类型在某个时间点的计数。时间间隔与时钟类型无关,也相对简单,所以先介绍一下时间间隔。
原创
博文更新于 2025.02.24 ·
762 阅读 ·
23 点赞 ·
0 评论 ·
20 收藏

C++ 的时间库之二:Ratio

从现在开始,我们开始介绍 C++ 风格的时间处理,在这之前,首先要介绍 std::ratio。因为 C++ 的 `chrono`库中的时间段(duration)定义离不开ratio,不了解 ratio,就很难理解duration 的定义。
原创
博文更新于 2025.02.18 ·
955 阅读 ·
20 点赞 ·
0 评论 ·
12 收藏

C++ 的时间库之一:C 语言传统

在 C++ 11 标准之前,C++ 的代码在处理跟时间有关的内容时,沿用的是 C 语言的库。C++ 11 引入了 chrono 库,经过 C++ 17 和 C++ 20 的补充,现在的 chrono 库已经完善。但是在介绍 C++ 的 chrono 库之前,了解一下 C 语言的时间处理方法是十分必要
原创
博文更新于 2025.02.14 ·
2025 阅读 ·
10 点赞 ·
0 评论 ·
20 收藏

C++ 的 get 和 get_if

介绍 std::get 和 std::get_if 函数,以及如何让自定义对象支持这两个函数
原创
博文更新于 2025.02.13 ·
1221 阅读 ·
30 点赞 ·
0 评论 ·
16 收藏

C++ 的 visit 函数

std::visit() 函数是 C++17 引入的一个得力工具,它可以让你针对一个 std::variant 的当前活动类型调用与之匹配的函数,换言之,它可以基于 std::variant 的实际活动类型完成一些函数分派(Dispatch)动作
原创
博文更新于 2025.02.11 ·
1629 阅读 ·
25 点赞 ·
0 评论 ·
30 收藏

C++ 17 的 std::byte 类型

在大多数平台上,字节(也被称为 8 位组),是计算机程序存储数据的基本单位。但是不幸的是,C++ 一直没有字节类型。有人会问 char 不是吗?char 还真不是,它是一个字符类型,在 C++ 的世界里一直被认为是整型数的一种,只是在大多数系统中恰好也是 8 个比特位而已。
原创
博文更新于 2025.02.10 ·
1141 阅读 ·
27 点赞 ·
0 评论 ·
29 收藏
加载更多