技术栈

C++(20):通过[[likely]]和[[unlikely]]优化编译switch

风静如云2023-11-06 19:22

C++20可以通过\[likely]和\[unlikely]告诉编译器,绝大部分情况会进入哪个case,很少情况会进入哪个case,从而帮助编译器进行优化:

cpp 复制代码
#include <iostream>
using namespace std;

int f(int a)
{
	int ret = 0;
	switch(a)
	{
	[[likely]] case 0:
		break;
	[[unlikely]] case 1:
		ret = 1;
		break;
	}
	return ret;
}

int main()
{
    cout<<f(0)<<endl;
    return 0;
}
上一篇:【带头学C++】----- 三、指针章 ---- 3.6 二维数组与数组指针的关系
下一篇:python aiohttp异步多并发协程访问&多个依赖url访问
相关推荐
攻城狮Soar
15 分钟前
STL源码解析之list(1)
开发语言·c++
2401_86976959
20 分钟前
内容5 日期类实现
开发语言·c++
xxwl585
24 分钟前
一个原创题(二)
c++·算法
MZZ骏马
1 小时前
C++ 极简模式的日志
c++
AbandonForce
1 小时前
滑动窗口:定长滑动窗口与不定长滑动窗口
数据结构·c++·算法
小欣加油
2 小时前
leetcode3689最大子数组总值I
c++·算法·leetcode·职场和发展·贪心算法
有点。
2 小时前
C++(贪心算法二)
开发语言·c++·贪心算法
有点。
2 小时前
C++贪心算法一(练习题)
开发语言·c++·贪心算法
Coder-magician
2 小时前
《代码随想录》刷题打卡day12:二叉树part02
数据结构·c++·算法
随意起个昵称
3 小时前
线性dp-LIS题目5(导弹拦截,二分优化)
c++·算法·动态规划
热门推荐
01【AI】2026 年具身智能模型和世界模型总结02GitHub 镜像站点03Codex 下载安装指南:Windows 和 macOS 官方版下载042026 年 AI 编程工具终极横评:Cursor vs Claude Code vs Copilot vs Windsurf052026 AI 编程工具终极实战指南:Cursor vs Claude Code vs Copilot,开发者该怎么选?06《置身钉内》原文-可播放阅读07AI科技热点日报 | 2026年6月1日08【踩坑记录 | 第一篇】微软商店无法使用时,如何手动安装 OpenAI Codex?附`.msix`文件系统错误解决方法09CC-Switch 下载、安装与使用配置指南【2026.5.29】10CC-Switch & Claude 基于 Linux 服务器安装使用指南