简介
continue 语句导致最近的循环语句的当次迭代提前结束;
对于 while 和 do while 语句,继续求解循环条件。
对于 for 循环,程序流程接着求解for 语句 头中的expression表达式。
continue 语句只能出现在for 、 while 、或者 do while 循环中,包括嵌套在这些循环内部的块语句中
=======================================================================================================================
一、continue 语句
1、continue 语句简介
continue 语句导致最近的循环语句的当次迭代提前结束;
对于 while 和 do while 语句,继续求解循环条件。
对于 for 循环,程序流程接着求解for 语句 头中的expression表达式。
continue 语句只能出现在for 、 while 、或者 do while 循环中,包括嵌套在这些循环内部的块语句中
string inBuf;
while(cin>>inBuf && !inBuf.empty()){
if(inBuf[0] !='_')
continue;
}
//如果不是下划线,终止当前循环,接着读取下一个单词
二、goto 语句
1、goto 语句简介
- goto 语句提供了函数内部的无条件跳转,实现从goto 语句跳转到同一个函数内某个带标号的语句。
goto label;// label 是用于标识带标号的语句的标识符
三、try 块和异常处理
1、异常处理机制
- throw 表达式
- try 块
- 重点内容由标准库定义的一组异常类,用来在throw 和相应的catch 之间传递有关的错误信息。
2、throw 表达式
- 系统通过throw 表达式抛出异常,throw表达式由关键字throw 以及尾随的表达式组成,通常以分号结束;
- throw 表达式的类型决定了所抛出的异常的类型;
3、try 块
try{
}
catch ( ){}
catch( ){}
一旦catch 子句执行结束,程序流程立即继续执行紧随着最后一个catch 子句的语句。
在try 块中声明的变量,包括 catch 子句中声明的变量,不能在try 外面引用。
//习题 6.23
int main()
{
bitset<100> bs;
for(size_t i=0;i!=bs.size();i++)
bs[i]=1;
bs.to_ulong();//执行to_ulong 操作将产生overflow_error异常
return 0;
}
//习题 6.24
int main()
{
bitset<100> bs;
for(size_t i=0;i!=bs.size();i++)
bs[i]=1;
try{ bs.to_ulong();//执行to_ulong 操作将产生overflow_error异常}
catch(runtime_error err){//异常处理
cout<<err.what()<<endl;
}
return 0;
}
四、标准异常
1、标准异常类
C++标准库定义了一组类,用于报告在标准库中的函数遇到的问题,
标准异常类定义在四个头文件中:
- exception 头文件定义了最常见的异常类,它的类名是exception 。
- stdexcept头文件定义了几种常见的异常类。
- new 头文件定义了 bad_alloc 异常类型,提供因为无法分配内存而由new 抛出的异常;
- type_info 头文件定义了bad_cast异常类型。
本文介绍了C++中的continue和goto语句用法,并详细解释了try块和异常处理机制,包括throw表达式、try块及标准异常类等内容。
279

被折叠的 条评论
为什么被折叠?



