Robin Chow's C++ Blog

 

[导入]C# 学习系列之流程控制

  1. C# 的 if 语句与 C、C++不同,即 if 后的逻辑表达式必须是布尔类型的。
  2. C 和 C++语言允许 switch 语句中 case 标签后不出现 break 语句,但 C#不允许这样,它要求每个标签项后使用 break 语句或跳转语句 goto,即不允许从一个 case 自动遍历到其它 case,否则编译时将报错。如果要像C,C++那样,执行完后继续遍历其它的语句,只需要明确加入这两条跳转语句即可:
    • goto case label:跳至标签语句执行
    • goto default:跳至 default 标签执行
  3. 异常处理语句:
    • C# 里的所有异常都表现为一个类的实例,这个类继承自 System.Exception 类。而在 C++中,任何类型的任何值都可以表示异常。
    • 在 C# 中,系统级的异常如溢出,零除数等,由于有一个定义完好的异常类因而可以等同于应用程序级错误条件。
    • 在一个 catch 块中,可以用不含表达式的 throw 语句将该块捕捉到的异常再次抛出,对于一场变量的分配不会改变再次抛出的异常。
    • 当 try 语句执行完以后,finally 块中的语句必将被执行。不论是否会发生由以下原因导致的程序控制转移:
      • 普通操作的结果
      • 执行 break、continue、goto 或 return 语句的结果
      • 将异常传播到语句之外的结果

文章来源:http://my.donews.com/robinchow/2007/04/06/c-%e5%ad%a6%e4%b9%a0%e7%b3%bb%e5%88%97%e4%b9%8b%e6%b5%81%e7%a8%8b%e6%8e%a7%e5%88%b6/

posted on 2007-10-23 20:45 Robin Chow 阅读(81) 评论(0)  编辑 收藏 引用


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


导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜