C++ Primer第六章语句笔记

  1. switch语句
    一般存在一个普遍的误解,以为程序只会执行匹配的case标号相关联的语句.实际上,程序从该点开始执行,并跨越case边界继续执行其它语句,直到switch结束或者遇到break语句为止.
char ch;
int aCnt = 0, eCnt = 0, iCnt = 0, oCnt = 0, uCnt = 0;
// 若ch值是‘i’,则iCnt = 1, oCnt = 1, uCnt = 1;
// 若ch值是‘e’,则eCnt = 1, iCnt = 1, oCnt = 1, uCnt = 1;
switch(ch){
	case 'a':
		++aCnt;
	case 'e':
		++eCnt;
	case 'i':
		++iCnt;
	case 'o':
		++oCnt;
	case 'u':
		++uCnt;
}
  1. do while语句
// 任何在循环条件中引用的变量都必须在do语句之前就已经存在
string rsp;
do {
	cin >> rsp;
}while (!rsp.empty() && rsp[0] != 'n');

// 错,对变量foo的操作发生在变量定义之前
do{
	munble(foo);
}while (int foo = get_foo());
  1. try块和异常处理
    1)throw表达式,错误检测部分使用这种表达式来说明遇到了不可处理的错误.可以说,throw引发了异常条件.
    2)try块,错误处理部分使用它来处理异常(若不可处理了,就用throw表达式).try语句以try关键字开始,以一个或多个catch子句结束,通常会被一个catch子句处理,catch子句也称为处理代码.
if (){
	throw runtime_error("Data must refer to same ISBN");
}

try{

}catch(runtime_error err){
	...	
}catch(){
	...
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值