logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

CppCon 2020 学习: B2B:C++Templates Part1

利用编译期的类型特征机制,可以写出在编译阶段判断类型属性的代码,从而辅助模板编程和类型安全设计。的大小作为模板参数,可以让接口更加安全和简洁,减少人为错误,但要注意可能增加生成代码的体积。如果需要,我可以帮你讲讲如何平衡模板代码膨胀和灵活性的策略。函数模板,可以比较任意类型的两个值(前提是该类型支持。画成一张图,你会更容易理解它在编译期的推导过程。比较运算符),返回其中较小的一个。类型的值,输出结

#学习#c++#开发语言
CppCon 2020 学习:C++20: String Formatting Library An Overview and Use with Custom Types

{}是占位符,按顺序替换参数{0}{1}可以指定参数位置,方便不同语言时调整参数顺序输出大括号用{{和}}来转义int n = 42;// 1. 简单占位符,按顺序替换// 输出: Read 42 bytes from file.txt// 2. 使用参数索引指定顺序// 输出: Read 42 bytes from file.txt// 3. 本地化示例,参数顺序改变std::cout << s

#学习#c++20#开发语言 +1
CppCon 2020 学习:How C++20 changes the way we write code

当时的计算机(如 Burroughs 220)内存很小(几千字),磁带为主要存储介质。COBOL 编译器通常很大,需要多次扫描(多 pass),而且被认为很复杂。这篇论文提出了一个快速、一遍(one-pass)的语法驱动编译器设计,可以在中等规模计算机上高效运行。int i = 0;// 输出:0 1 2这里(协程承诺对象)迭代接口(或调用运算符()这样g()每次调用都会从协程挂起点恢复,继续执行

#学习#开发语言#c++
CppCon 2021 学习:Beyond struct: Meta programming a struct Replacement in C++20

定义了一个名为的结构体,里面有三个成员:、、。和有默认值, 没有默认值,所以必须初始化。是类型的对象。给成员赋值 1, 给成员赋值 。由于有默认值 0,没有显式初始化,所以 。这两行是对结构体成员的直接修改。打印输出当前的和 ,结果会是:注意:如果你用的是 C++17 或更早的标准, 这种设计器初始化是不支持的,需要写成:总结:这段代码演示了结构体的定义、默认值、C++20设计器初始化以及修改成员

#学习#c++20#算法 +2
CppCon 2021 学习: Compile-Time Compression and Resource Generation with C++20

这段英文主要是在介绍 C++20 的特性及其应用,理解如下:介绍探索 C++20 的特性如何实现以下功能:理解是一个 ,值为二进制 ,即 40。是一个 ,元素是 。变量隐含 ,所以不能修改,比如会报错。在运行时也能用,但如果用于编译期常量表达式,编译器可以在编译期计算结果。constexpr 函数(Function)理解返回类型要求必须返回 字面量类型(Literal Type),或者 。字面量类

#学习#c++20#算法 +2
CppCon 2021 学习:C++2O‘s <chrono> Calendars and Time Zones in MSVC

提供的内容是 C++20中新增的**日历类型(Calendrical Types)**示例。下面我帮你逐步用理解和解释:C++20不再只是时间点和持续时间(time_point / duration),还增加了专门表示“日历概念”的类型,比如:输出理解:输出理解:理解:理解:理解:2⃣ 总结类型含义示例年 + 月 + 日2021-10-28月 + 第 N 个星期几Nov/Thu[4]月 + 最后一

#学习#c++#开发语言 +1
CppCon 2021 学习:Using C libraries in your Modern C++ Embedded Project EtherCAT Stack, C++17, and Mode

"idle"_s:系统空闲,可以响应 CAN 消息进入,也可以关闭安全模式。:系统在等待通信,处理有效消息,计数 tick 或无效消息,超过阈值则进入"safety"_s。"safety"_s:系统进入安全模式,必须 reset 才能回到"idle"_s。events// events事件(events)定义tick:定时器事件,表示系统的“时钟滴答”或周期性触发。用途:前面状态机中用于计数、检查

#学习#开发语言
CppCon 2022 学习: Graph Algorithms and Data Structures in C++20 Toward std::graph

这段内容是讲 图(Graph) 的定义和一个示例图的可视化(用 SVG 绘制的“城市距离图”)。我帮你分成两部分解释:SVG 画的是一个“城市距离图”,用来说明图的直观结构。每个城市是一个 顶点(vertex),城市之间的道路(带距离的连线)是 边(edge)。85 km217 km173 km80 km186 km167 km25

#学习#c++20#c++ +1
CppCon 2022 学习:import CMake CMake and C++20 Modules

“Usage Requirements” / 现代 CMake (Modern CMake)现代风格:以 target 为中心含义:目标自身以及链接到它的目标都会使用每个 target 应该 完整描述如何使用它内部和外部 target 的使用方式一致目标依赖与使用范围现代 CMake 用三种关键关键词控制依赖和可见性:每个库或可执行文件应 明确声明使用的 include、link 和依赖关系通过

#学习#c++20#开发语言 +1
CppCon 2022 学习:An Introduction to Multithreading in C++20

可以使用实现自己的取消逻辑,例如取消异步 I/O 操作:// 在 stop_token 被请求停止时执行取消操作});// 阻塞式读取思路会在被调用时触发,你可以在回调中执行资源释放或取消操作。总结特性用法注意事项协作取消任务必须主动检查自定义取消可在回调中实现 I/O 或其他操作的取消线程安全自动 join,避免资源泄漏不要强制终止线程核心理念:取消是协作式的,线程必须自己配合停止,否则无法安全

#学习#c++20#c++ +1
    共 321 条
  • 1
  • 2
  • 3
  • 33
  • 请选择