当前位置: 首页 > article >正文

C++(23):unreachable

C++23在头文件 "><utility>定义了std::unreachable(),用于指示编译器,该段代码不应该被允许,因此编译器可以对该位置进行优化,如果一旦允许了该位置的代码,行为未定义:

#include <utility>
#include <iostream>

using namespace std;

int func(int data)
{
    switch (data)
    {
    case 0:
    	data += 1;
    	break;
    default:
    	cout<<"unreachable"<<endl;
        std::unreachable();
        data += 10;
    }
    return data;
}

int main()
{
	int r = func(0);
	cout<<"1 func return:"<<r<<endl;
	r = func(1);
	cout<<"2 func return:"<<r<<endl;
	cout

http://www.kler.cn/a/552273.html

相关文章:

  • 深入解析 Flutter 高级路由管理:使用 go_router 和 auto_route 实现复杂路由与拦截
  • Mermaid绘图技巧:如何在节点文本中实现换行
  • 力扣 跳跃游戏 II
  • 从WebRTC到EasyRTC:嵌入式适配的视频通话SDK实现低延迟、高稳定性音视频通信
  • springboot024-玩具租赁系统
  • Java-数据结构-(HashMap HashSet)
  • 阶段 1:Kafka基础认知
  • WPF高级 | WPF 自定义控件开发:从需求分析到完整实现
  • MoE硬件部署
  • el-table已经选中的项,通过selectable属性不可以再次选择
  • 视频编解码标准中的 Profile 和 Level
  • QT实战-qt各种菜单样式实现2
  • sql server查询IO消耗大的排查sql诊断语句
  • 【产品资料】陀螺匠·企业助手v1.8 产品介绍
  • 豪越科技:消防安全重点单位一体化安全管控
  • 基于SSM框架的宠物之家系统(有源码+论文!!!)
  • 根据CAN通讯矩阵使用CANoe生成DBC
  • 4.【线性代数】——矩阵的LU分解
  • 3DM转换成GLB
  • CPP集群聊天服务器开发实践(七):Github上传项目