最新 最热

[现代C++]可变参数和折叠表达式

C++程序员肯定接触过可变参数,毕竟我们都用过printf,但是直到C++11时C++才推出真正意义上的可变参数。

2024-07-18
15

浅析委托构造与继承构造

在现代C++编程中,构造函数扮演着初始化对象状态的重要角色。随着语言的发展,C++11引入了两个强大的构造机制——委托构造(Delegating Constructors)和继承构造(Inheriting Constructors),它们均增强了代码复用,减少重复代码,提...

2024-07-18
19

[现代C++]读写文件

昨天的文章中叙述了C++17的文件系统操作,极大的方便了对于文件夹的操作,见链接[现代C++]文件系统操作。今天将更深一步的讲解文件的读写。

2024-07-18
18

[现代C++]文件系统操作

作为一名QT开发工程师,对于QT的文件系统操作的便利性推崇备至,但在非QT程序中仅仅因为操作文件系统而集成QT库显得过于繁重。

2024-07-18
18

miniaudio:音频开源库的首选

软件开发中遇到需要播放音频文件时,可以使用操作系统提供的API也可以依赖于第三方库,通常第三方库多因其简单易用的接口而成为首选。miniaudio便是游戏的音频开源库之一。...

2024-07-18
20

nlohmann:现代C++支持度最高的json库

之前推荐过json组装和解析的开源库jsoncpp,今天推荐另一款json类库nlohmann,其以对于现代C++的支持度高而著称。

2024-07-18
18

std::optional:解决值存在性问题的利器

查找std::vector内的首个偶数,如果存在则返回该偶数;可是如果std::vecotr内不存在偶数时,该如何?通常是找一些魔幻值/错误码作为返回值,如-1;如如下代码...

2024-07-18
16

[Modern CPP]内联变量——保证变量唯一性的利器

在 C++ 中,一个定义了全局变量的头文件被多个源文件包含时,每个源文件都会创建该全局变量的一个实例,这可能导致链接时出现重定义错误,代码示例如下。...

2024-07-18
15

获取函数执行结果的n种方式

C++编程中,函数作为封装了一系列操作或计算过程的独立代码块,用于执行相应的功能。可能是操作文件IO、socket等资源,亦或者是修改某个成员变量,亦或者是单纯的执行计算并将结果返回给调用方。无论是哪种情况函数执行结果...

2024-07-18
18

浅析RVO

RVO(Return Value Optimization,返回值优化)是C++中的一种优化技术,用于避免不必要的对象拷贝,提高程序的性能和效率。NRVO(Named Return Value Optimization,命名返回值优化)是RVO的一种特殊情况,隶属于RVO范畴。...

2024-07-18
13