草庐IT

c++ - 切换枚举类的所有项目时的默认案例编译

为什么下面的开关甚至编译默认情况,因为它涵盖了枚举类的所有项目?我本以为这就是首先拥有强大的enumclass的原因。至于为什么即使我知道我涵盖了所有情况,我还是希望有一个默认值:这可以保护我免受future粗心大意(以及其他同事的粗心)enumclassE{a,b};intmain(){Ec=E::b;switch(c){caseE::a:caseE::b:std::coutProof 最佳答案 因为编译无法知道是否有人将非法值强制转换为枚举类型。考虑:Ec=static_cast(42);Actor将在没有警告(甚至错误)的情况

记使用postman测试map类型入参的粗心大意

一起因我工作时间不久,前后端做习惯了,一般都在前端打印后端传过来的数据,加之swagger文档一时间又找不到,只能用回以前的postman测试二测试运维我习惯了json格式传数据,然后如下控制层如下当时因为开发时间紧,然后换了个实体类,结果就好了,后面觉得还是要探究一下这个原因。三结果结果发现了我用postman工具用错了,太久没用了,之前用多了json格式,也就是说我用postman中的raw中的json发送数据,后端接收类型应该是requestbody,而用form-data发送数据后端接收用requestparam四错误分析显而易见的,就是后端接收注解与测试中格式不对应才会出现这样的问题