像大海一样

sea!!!

常用链接

统计

最新评论

c++中的异常处理

        任何程序都难保会出现逻辑错误或运行异常。c++语言有专门的语句支持异常处理,从而使程序易于测试和处理错误。
在原来c语言面向过程的程序设计中,用if.....else....语句也可以处理出现的异常。在面向对象的程序设计中,显然要改变
这种方法。

       在c++中用try,throw和catch语句来处理异常。(它们可以是语句,也可以是语句块。)try语句用来定义异常,包含有
可能产生异常的语句。throw语句是抛掷异常,当它检测到异常,则抛掷它。catch语句是异常处理语句,当异常被传递过来时,catch
捕获到它进而处理它。catch语句需要有形参类型。若tacth语句中需要形参,则需要形式参数,否则形式参数可有可无。但它是
严格匹配的。如果找不到与之匹配的catch语句,则程序调用abort()函数终止程序。
    其使用大致如下:
              ......
               try{
               .....
               throw a;
                .....}
                .....
              catch(int a)
               {.....}
    可以有多个throw语句,每个throw语句抛掷的类型都要不同;对应的可以有多个catch语句,每个catch语句的形参类型不同,它们的形参
 与throw是相对应的。需要特别注意:catch的形参类型是严格匹配的。如:
                     ........
                     try{
                     int a=20;
                     .....
                     throw a;
                     }
                     ......
                     catch(unsigned int)
                     {.......
                     }
                     .........
   throw 和catch是不匹配的。
  
   注意:1.try语句前不能出现catch语句。
         2.抛掷语句throw与处理异常的catch语句可以出现在不同的函数中。但执行时,应是先执行throw,再执行catch语句。
         3.在程序中可以出现多路捕获。
        

posted on 2007-07-09 19:34 abcd2007 阅读(135) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理