跳转至
Tutorial_AwesomeModernCPP的文档
标签索引
正在初始化搜索引擎
Tutorial_AwesomeModernCPP的文档
欢迎来到 Awesome-Embedded-Learning-Studio 的现代C++教程
标签索引
标签索引
目录
标签说明
并行计算C++
并行计算C++
AVX 指令集系列深度介绍:领域、意义、以及 AVX / AVX2 的基本用法与样例
挑战:使用现代C C++编写STM32F103C8T6
挑战:使用现代C C++编写STM32F103C8T6
01 led
01 led
第6篇:从点亮第一盏LED开始 —— 我们为什么要用现代C++写STM32
第7篇:GPIO到底是什么 —— 通用输入输出的前世今生
第8篇:推挽、开漏与PC13 —— LED点亮的硬件秘密
第9篇:HAL时钟使能 —— 不开时钟,外设就是一坨睡死的硅
第10篇:HAL_GPIO_Init —— 把引脚配置告诉芯片的仪式
第11篇:HAL_GPIO_WritePin与TogglePin —— 让引脚动起来
第12篇:C宏时代的LED驱动 —— 能跑但不优雅
第13篇:第一次重构 —— enum class取代宏,类型安全的开始
第14篇:第二次重构 —— 模板登场,编译时绑定端口和引脚
第15篇:第三次重构 —— if constexpr让时钟使能在编译时自动选对
第16篇:第四次重构 —— LED模板,从通用GPIO到专用抽象
第17篇:C++23特性收尾 —— 属性、链接与零开销抽象的最终证明
第18篇:常见坑位与实战练习 —— 把LED玩出花样来
Env setup
Env setup
第1篇:从零搭建 STM32 开发工具链 —— 交叉编译原理与安装指南
第2篇:项目结构篇 —— HAL 库获取、启动文件坑位与目录搭建
CMake 配置篇 —— 从零构建 STM32 构建系统
环境搭建(四):WSL2 USB 透传,让 ST-Link 穿越虚拟化边界
第5篇:调试进阶篇 —— 从 printf 到完整 GDB 调试环境
核心:现代嵌入式C++教程
核心:现代嵌入式C++教程
Chapter0
Chapter0
前言
嵌入式的资源与实时约束
C语言速通复习
C++98基本特性
何时用C++、用哪些C++特性
语言选择原则
性能与体积评估
Chapter1
Chapter1
交叉编译和CMake简单指南
常见编译器选项指南
链接器与链接器脚本
Chapter10
Chapter10
std::atomic 原子操作
memory_order 内存序
无锁数据结构设计
mutex 与 RAII 守卫
中断安全的代码编写
临界区保护技术
Chapter11
Chapter11
自动类型推导:auto与decltype
结构化绑定(Structured Binding)
范围for循环优化
属性(Attributes)
三路比较运算符(C++20 Spaceship Operator)
指定初始化器
用户定义字面量
Chapter12
Chapter12
模板入门概述
函数模板详解
类模板详解
模板特化与偏特化
非类型模板参数
模板参数依赖与名字查找
模板友元与 Barton-Nackman 技巧
模板别名与Using声明
模板与继承:CRTP与静态多态
Chapter2
Chapter2
零开销抽象
内联与编译器优化
constexpr 编译期计算
CRTP vs 运行时多态
Chapter3
Chapter3
初始化列表
移动语义
RVO与NRVO返回值优化
空基类优化(EBO)
对象大小与平凡类型
Chapter4
Chapter4
constexpr 与设计技巧
consteval与constinit
编译期计算实战
if constexpr 编译期条件
Chapter5
Chapter5
动态分配问题
静态存储与栈上分配策略
对象池模式
Placement New 的使用
固定池分配
std::array vs 一般数组
Chapter6
Chapter6
RAII 在外设管理中的作用
unique_ptr 独占所有权智能指针
shared_ptr 共享所有权智能指针
unique_ptr与shared_ptr的嵌入式取舍
Intrusive 智能指针与引用计数
自定义 Deleter
引用计数原理与实现
Scope Guard 作用域守卫
Chapter7
Chapter7
std::array 固定大小容器
std::span 数组视图
循环缓冲区实现
侵入式容器设计
ETL 嵌入式模板库
自定义分配器
Chapter8
Chapter8
enum class 强类型枚举
类型安全的寄存器访问
std::variant 类型安全联合体
std::optional 可选值
std::expected 错误处理
类型别名与using声明
字面量运算符与自定义单位
Chapter9
Chapter9
Lambda 表达式基础
Lambda 捕获与性能影响
std::function vs 函数指针
回调机制的零开支实现
std::invoke 与可调用对象
函数式错误处理模式
C++20 范围库基础与视图
管道操作与 Ranges 实战
深入理解CC++编译特性指南
深入理解CC++编译特性指南
深入理解C/C++的编译与链接技术:导论
深入理解CC++的编译与链接技术(番外):动态库可以像可执行文件那样执行嘛?
深入理解CC++的编译与链接技术2:动态库静态库导论
深入理解CC++的编译与链接技术3:如何制作和使用静态库
深入理解C/C++编译与链接技术4:动态库A1:基本讨论之-fPIC
深入理解C/C++的编译链接技术6——A2:动态库设计基础之ABI设计接口
深入理解C/C++编译技术——动态库A3:聊一聊符号可见性
深入理解C/C++编译技术——动态库A4:链接时符号缺失行为与运行时动态加载
深入理解C/C++的编译与链接技术8:库文件检索逻辑
深入理解CC++的编译与链接技术9:动态库细节(完结)
环境配置
环境配置
如何快速在 VS2026 上使用 C++ 模块 — 完整上手指南
快速在WSL上开发一般的C++上位机程序
现代C++工程实践
现代C++工程实践
Prompt
文件处理
文件处理
现代C++实战——从零开始写个文件拷贝器(上):需求分析与基础框架
现代C++工程实践——从零开始写个文件拷贝器(下):核心实现与实战测试
现代C++特性
现代C++特性
一文读懂 MSVC C++ Modules:原理、动机与工程实践
std::string_view 全攻略
现代C++的协程
现代C++的协程
理解C++20的革命特性——协程引用之——利用协程做一个迷你的Echo Server
理解C++20的革命特性——协程支持1
理解C++20的革命特性——协程支持2:编写简单的协程调度器
调试专题
调试专题
深入解构:MSVC 调试机制与 Visual Studio 调试器原理
标签索引
¶
本教程使用标签来组织和分类文章,方便你按主题查找相关内容。
标签说明
¶
点击下方标签可以查看所有使用该标签的文章:
回到页面顶部