刷新
深入解析decltype和decltype(auto)

博主头像 decltype关键字是C++11新标准引入的关键字,它和关键字auto的功能类似,也可以自动推导出给定表达式的类型,但它和auto的语法有些不同,这篇文章讲解了decltype的使用场景以及和auto不同的地方,同时也讲解了和auto结合使用的用法。 ...

const 使用总结

博主头像 const关键字是用于定义一个不该被改变的对象,它的作用是告诉编译器和其他程序员不允许修改这个对象的值或者状态。当程序员看到使用const修饰的代码时就知道不应该修改对应对象的值,而编译器则会强制实施这个约束,任何违反这个规定的代码会在编译期间报错。它可以用于任何函数或者类之后的全局或namespa ...

深入解析C++的auto自动类型推导

博主头像 C++的auto关键字在C++11新标准出来之前基本上处于弃用的状态,到C++11新标准发布之后,auto关键字被赋予了新的意义,并且功能也变得很强大,此篇文章重点介绍auto关键字的新功能、新用法,以及在C++14、C++17、C++20各版本中对它的使用缺陷和限制不断地修正和增强,当然auto关... ...

Windows系统编译libhv带SSL,开启WITH_OPENSSL

需要开发一个https的服务,使用libhv来做,需要重新编译libhv,需要开启 WITH_OPENSSL,前面编译一直很顺利,但是打开VS生成动态库的时候,报错,找不到ssl相关的文件,看了官方的文档,说需要自己配置ssl。然后研究怎么编译OPENSSL,和编译支持HTTPS的libhv花了一点 ...

std::format 如何实现编译期格式检查

博主头像 C++ 20 的 std::format 是一个很神奇、很实用的工具,最神奇的地方在于它能在编译期检查字符串的格式是否正确,而且不需要什么特殊的使用方法,只需要像使用普通函数那样传参即可。 #include <format> int a = 1; std::string s1 = std::form ...

特别篇 VSCode+MSYS2 更好的开发环境搭建!

博主头像 本文介绍了如何配置更好的编码平台,因为 NOI 系列中的 Dev-C++ 用户体验不佳。需要能够使用无高亮显示的主要语法和功能强大的计算机。使用清华的国内镜像安装带有 Clang 的 MSYS2,配置环境变量并安装 VSCode。最后,通过安装 Visual Studio Code 中文(简体)语言... ...

C++ 数学函数、头文件及布尔类型详解

博主头像 C++ 数学 C++ 有许多函数可以让您在数字上执行数学任务。 最大值和最小值 max(x, y) 函数可用于找到 x 和 y 的最大值: 示例 cout << max(5, 10); 而 min(x, y) 函数可用于找到 x 和 y 的最小值: 示例 cout << min(5, 10); C+ ...

[ABC347C] Ideal Holidays题解

博主头像 [ABC347C] Ideal Holidays题解 原题传送门 原题传送门(洛谷) ​ 题意翻译: ​ 在 \(AtCoder\) 王国中,一个周有 \(A+B\) 天。其中在一周中, \([1,A]\) 天是假日, \([A+1,B]\) 天是工作日。 ​ 高桥有 \(N\) 个计划,第 \(i ...

博主头像 堆 堆是一种树形结构,树的根是堆顶,堆顶始终保持为所有元素中优先级最高的元素,如小根堆与大根堆,小根堆的堆顶始终为最小的元素,大根堆的堆顶始终保持为最大的元素。堆一般用二叉树实现,称为二叉堆。二叉堆的典型应用有堆排序和优先队列。 本片将包括: 目录堆(1.二叉堆的概念(2.二叉堆的操作1.上浮2.下 ...

分块学习笔记

博主头像 学了分块,感觉这玩意好难啊,怎么听起来这么简单?【】【】分块! 先推荐一个东西:loj 分块全家桶! 首先,把一整个数组劈成 \(\sqrt n\) 块是最优的!(当然如果你想写一个 \(114514\) 块的分块也没问题但他不优啊!) 分块劈好后长这样: 这样它的复杂度是: 预处理:\(O(n\s ...

<1234···35>