博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
switch case 中定义变量
阅读量:5990 次
发布时间:2019-06-20

本文共 447 字,大约阅读时间需要 1 分钟。

刚刚又报了一个:1540-0246 (S) The "case" statement bypasses the initialization of "CString sRoamAreaCode".
  这种不清楚的状况终于因为刚刚的一时兴起,google了下下~~
  原来只是加不加括号的区别。
  因为C++中变量的作用域是相邻的两个大括号,假设下面的例子:
  int nChoose; 
  switch(nChoose)
{
  case 1:
   int i = 1;
  break;
  case 2:
  break;
  default:
   break;
}
i的作用域是switch的两个大括号,这样如果nChoose的值是2的话,就会跳过i的声明 定义语句,出错是必然的。
所以,只要加个大括号,就什么问题都解决啦
int nChoose; 
  switch(nChoose)
{
  case 1:
{
   int i = 1;
}
  break;
  case 2:
  break;
  default:
   break;
}
出处:
作者:

转载地址:http://lqnlx.baihongyu.com/

你可能感兴趣的文章
python获取PING结果
查看>>
制作Windows XP万能克隆镜像
查看>>
WebStorm: The Smartest JavaScript IDE by JetBrains
查看>>
炮灰模型——女生选择追求者模型
查看>>
C# System.IO.FileStream 文件正由另一进程使用,因此该进程无法访问该文件
查看>>
解决vim粘贴时格式混乱的问题
查看>>
vue-cli3 项目从搭建优化到docker部署
查看>>
95. Unique Binary Search Trees II
查看>>
前后分离的总结
查看>>
TIOBE 2 月排行榜:时隔 3 年,Groovy 重进 TOP 20
查看>>
Distributed Systems-一致性协议背景介绍及Paxos算法的推导
查看>>
Python Logging库HTTPHandler的消息格式化的方法
查看>>
Python基础教程:Day15-图像和办公文档处理
查看>>
Bytom设计结构解读
查看>>
java实现FTP多线程断点续传,上传下载
查看>>
突破瓶颈,对比学习:Eclipse开发环境与VS开发环境的调试对比
查看>>
同步与异步&阻塞与非阻塞-各种解释
查看>>
Android中如何查看内存(上)
查看>>
Jersey2.x框架搭建简单的Restful API
查看>>
Hadoop的实现原理及基本使用方法
查看>>