c++20

前进吧-程序员10 天前
开发语言·c++·c++20
现代 C++ 异步编程:从零实现一个高性能 ThreadPool (C++20 深度实践)在高性能 C++ 开发中,线程池是绕不开的核心基础设施。随着 C++20 标准的普及,我们能够以更简洁、更安全的方式实现一个生产级的线程池。本文将带你深度剖析一个基于 std::jthread 的线程池实现,并探讨其背后的架构思考与内存管理机制。
君鼎12 天前
算法·c++20
C++20 新特性全面总结核心思想:C++20 是继 C++11 之后最大的一次语言变革,被称为"C++的第二次革命"。它引入了四大旗舰特性——Concepts(概念)、Ranges(范围)、Coroutines(协程)、Modules(模块),同时在语言和标准库层面带来了三路比较运算符、constexpr 的全面扩展、std::format、std::span、日历/时区、协作式线程取消等大量现代化基础设施,标志着 C++ 正式进入"声明式、安全、高表达力"的新时代。
十五年专注C++开发21 天前
c++20·反射·udrefl
UDRefl: 一个基于C++20的高性能动态反射库目录1.简介2.核心概念3.安装与集成4.使用详解4.1.注册流程4.2.使用流程4.3.完整示例5.应用场景
前进吧-程序员21 天前
c++20
C++20 Concepts 简明介绍:模板编程的“合约时代”C++20 引入的 Concepts(概念) 是模板泛型编程自诞生以来最具革命性的进化。它将模板从“黑魔法”转变为一种类型安全、语义清晰、易于调试的现代化工程工具。
w我是东山啊1 个月前
c++20
C++20——协程目录前言什么是协程协程的三要素Promise对象协程句柄Awaitable 对象样例一:生成器样例二:异步线程恢复
wangjialelele1 个月前
linux·c语言·开发语言·c++·c++20·visual studio
C++11、C++14、C++17、C++20新特性解析(一)返回值类型单一,内部只支持一句return语句,想要执行多个步骤只能递归这种方法就可能出现b在a之前初始化的问题,所以使用constinit就能使两者一定在编译器都完成初始化
telllong1 个月前
java·前端·c++20
C++20 Modules:从入门到真香说实话,我一开始对 C++20 Modules 是拒绝的。编译器支持不完善、构建系统兼容性差、网上资料还少——这玩意儿能用?直到最近重构一个头文件依赖严重的项目,被 #include 的循环依赖折磨得死去活来,才决定认真研究一下 Modules。结果发现:真香。
Max_uuc2 个月前
c++20
【架构心法】逃离回调地狱:从 Protothreads 到 C++20 协程 (Coroutines) 的嵌入式进化摘要:嵌入式系统的本质是异步的(中断驱动)。但在代码层面,异步往往意味着复杂的 状态机 或深层嵌套的 回调函数。逻辑被切得七零八落,维护变得异常困难。本文将剖析 “控制流反转” 的痛点,重温经典的 Protothreads(达夫设备) 黑科技,并深入 C++20 的 co_await 机制,演示如何将复杂的硬件时序逻辑折叠成一行线性的“伪同步”代码。
阿猿收手吧!3 个月前
开发语言·c++·c++20
【C++】C++20协程的await_transform和coroutine_handleC++20 协程的底层核心组件包括 noop_coroutine 系列工具、协程句柄 std::coroutine_handle,以及控制协程挂起恢复的关键逻辑 await_transform 和 await_suspend。
阿猿收手吧!3 个月前
c++·c++20
【C++】 co_yield如何成为语法糖?解析其背后的Awaitable展开与协程状态跃迁C++20引入的无栈协程是现代C++异步编程和生成器开发的核心特性,但其底层原理、Awaitable类型设计、co_yield语法糖的本质往往让初学者感到困惑。本文将从协程核心模型出发,由浅入深拆解协程的实现逻辑、Awaitable类型的设计初衷,以及std::suspend_always/never和co_yield的底层含义,帮助读者建立完整的协程知识体系。
吐泡泡_3 个月前
c++20
C++20(三路比较运算符)目录一 三路比较运算符二 类重载运算符三 比较类别在 C++ 20 之前要求自定义类型支持比较,就要重载 operator < > == != >= <= 这些比较符,而 C++ 20 提供了 <=> 三路比较运算符,又称 宇宙飞船运算符,他同时兼具了上述的所有比较符的逻辑,统一了接口,不必写冗余的代码。
啟明起鸣3 个月前
开发语言·c++·c++20·模板线程池
【C++20新特性】概念约束特性与 “模板线程池”,概念约束是为了 “把握未知对象”推荐一个零声教育学习教程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,点击立即学习: https://github.com/0voice 链接。
linweidong3 个月前
stl·vector·线程·内存管理·c++20·c++面试·c++调用
虎牙C++面试题及参考答案(上)extern 关键字在 C/C++ 中是核心的链接属性说明符,核心作用是声明变量或函数的作用域为外部链接,即该变量 / 函数的定义并非在当前编译单元(.c/.cpp 文件)中,而是存在于其他编译单元,编译器编译当前单元时不会为其分配内存或生成函数体,仅做语法校验,链接阶段由链接器从其他编译单元中找到对应的定义并完成关联。同时 extern 也可用于声明全局变量,避免因重复定义导致的链接错误 —— 全局变量若仅声明不定义(加 extern),可在多个编译单元中存在,而定义(不加 extern)只能出现在一个
吐泡泡_3 个月前
c++20
C++20(概念和约束)声明:本章采纳 https://cppreference.com/ 和 MSVC 来演示。目录一 什么是概念
訫悦3 个月前
qt·c++20·协程
体验在Qt中简单使用C++20的协程
fpcc3 个月前
c++20
C++20中的预处理器宏——__VA_OPT__预处理,Preprocessing,它是在正式编译前对源代码的一种文本层面的处理。主要包括宏展开、文件包含、条件编译以及注释等的处理。预处理器则是执行上面的预处理的一种工具,它会不涉及到语法或语义的操作。预处理器宏就是宏,与普通的宏没有本质区别。不过,它是用于进行预处理的。常见的预处理器宏有:#ifdef、#ifndef、#if等以及一些特定的功能宏如_FILE_ 和 __LINE__等。
Codeking__3 个月前
算法·c++20
C++20的consteval和constinit(接C++11的constexpr)C++11提出的constexpr修饰函数时我们知道,其即可以当成编译时的函数(写法严格按照要求),当不满足constexpr条件时也可以当成普通函数使用。
六bring个六3 个月前
c++20·协程
C++20协程之前看项目碰到了用协程实现的线程池调度系统,看的人一脸懵,我做项目都是基于Qt框架的吗,习惯于要做什么任务,就把任务丢进任务队列,调用的是qt自带的全局线程池,同事实现的线程池可以自定义线程名,写的挺高级的,就到现在我老想着掌握协程。
C++实习生3 个月前
express·c++20
Visual C++ 2005 Express 中文版Visual C++ 2005 Express 中文版20年前的一个版本,学习C++编程使用的IDE。
Ethan Wilson3 个月前
开发语言·c++·c++20
VS2019 C++20 模块相关 C1001: 内部编译器错误16.8.3版本 稳定触发 修改【链接时代码生成】无用。paramModule.ixxmain.cpp