enum class c++11新增有作用域的枚举类型,看代码 不带作用域的枚举代码: enum AColor { kRed, kGreen, kBlue }; enum BColor { kWhite, kBlack, kYellow }; int main() { if (kRed == kWhite) { cout << "red == white" << endl; } return 0; } 如上代码,不带作用域的枚举类型可以自动转换成整形,且不同的枚举可以相互比较,代码中的红色居然可以和白色比较,这都是潜在的难以调试的bug,而这种完全可以通过有作用域的枚举来规避。 有作用域的枚举代码: enum class AColor { kRed, kGreen, kBlue }; enum class BColor { kWhite, kBlack, kYellow }; int main() { if (AColor::kRed == BColor::kWhite) { // 编译失败 cout << "red == white" << endl; } return 0; } 使用带有作用域的枚举类型后,对不同的枚举进行比较会导致编译失败,消除潜在bug,同时带作用域的枚举类型可以选择底层类型,默认是int,可以改成char等别的类型。 enum class AColor : char { kRed, kGreen, kBlue }; 我们平时编程过程中使用枚举,一定要使用有作用域的枚举取代传统的枚举。enum class用法
张小明
前端开发工程师
接口调不通的情况
最近,在做一个项目,对接evolink的api, 发现在他们线上的测试接口是OK的,但是在我本地进行调试时候一直提示 read econnreset一直提示网络连接错误,连接被对方强制重置 通过ping 域名也能ping通, 但就是访问不了别怕&am…
APS1604M:办公设备智能升级的“高性能内存引擎”
品牌:AP MEMORY 封装:SOP-8 电压:1.8V免费样品供应渠道-中国区总代理:深圳市贝乐实业股份有限公司在移动打印机与指纹识别仪的智慧进化中,流畅体验与高效处理的核心,往往藏在一块关键芯片里——AP Me…
学长亲荐10个AI论文平台,自考毕业论文轻松搞定!
学长亲荐10个AI论文平台,自考毕业论文轻松搞定! 论文写作的“隐形助手”正在改变你的学习方式 在自考的道路上,论文写作常常是许多学生最头疼的部分。面对复杂的格式要求、严谨的逻辑结构以及繁重的查重压力,很多人感到无从下手。…
解锁时间魔法:SQL中TIMESTAMPDIFF函数的使用指南
文章目录 一、函数概述:为什么需要 TIMESTAMPDIFF? 二、核心语法与参数解析 1. 基础语法 2. 关键参数详解 (1)时间单位`unit`完整支持列表 (2)时间参数`start_datetime`/`end_datetime` 三、实战示例:覆盖 80% 使用场景(新增扩展案例) 1. 基础单位计算(新增微秒、季度…
(37)全注解式开发AOP
就是编写一个类,在这个类上面使用大量注解来代替spring的配置文件,spring配置文件消失了,如下: package com.powernode.spring6.service;import org.springframework.context.annotation.ComponentScan; import org.springframewo…
外卖骑手实时就近派单全攻略:SpringBoot + GeoHash 高效实现
一、核心问题:如何快速找到最近的骑手? 用户在城市下单时,系统需要即时回答:方圆3公里内,哪些骑手是空闲的?谁离我最近? 传统方法: 获取所有空闲骑手经纬度 (lng, lat) 计算距离 排序找出最近的骑手 问题:城市有数万骑手时,每次计算数万距离,数据库和服务器瞬间崩…