www.oingaieng.cn-国产成人精品免费视频大全,中文字幕无码不卡免费视频 ,777精品久无码人妻蜜桃,国产一级A毛久久久久一级A看免费视频

    理解goto語句的替代方式分析

    時間:2020-08-27 18:36:22 句子 我要投稿

    理解goto語句的替代方式分析

      曾幾何時,goto是多么的讓牛人綻放他們高超的精湛技術(shù)

      曾幾何時,goto又變成了萬惡之首

      曾幾何時,goto只在教科書中的示例才會出現(xiàn)

      有太多的理由不讓用goto,但有時,我們又想使用goto的功能,怎么辦?

      用try/catch/finally便可實現(xiàn)同等于goto的功能,來看二個示例:

      復制代碼 代碼如下:

      try {

      // operation one

      if (failed) {

      throw Exception;

      }

      // operation two

      if (failed) {

      throw Exception;

      }

      // operation three

      if (failed) {

      throw Exception;

      }

      } catch (Exception e) {

      // do something when cases failed

      }

      和:

      復制代碼 代碼如下:

      try {

      // operation one

      if (failed) {

      return;

      }

      // operation two

      if (failed) {

      return;

      }

      // operation three

      if (failed) {

      return;

      }

      } finally {

      // do something when failed

      }

      以上二段都等同于:

      復制代碼 代碼如下:

      // operation one

      if (failed) {

      goto when_failed;

      }

      // operation one

      if (failed) {

      goto when_failed;

      }

      // operation one

      if (failed) {

      goto when_failed;

      }

      when_failed:

      // do something when failed

      用異常的方式有些暴力,但確實能正確的幫助實現(xiàn)類似goto的功能;用return和finally雖不是很暴力,但是比較難控制,因為涉及到return語句,它會在finally塊執(zhí)行后得以執(zhí)行,所以如果不想退出程序的`話,這個方法還不如用異常來控制。

      另外,break, continue也是比較強大的跳轉(zhuǎn)語句,特別是break label和continue label,可以跳出一層循環(huán)或是多層循環(huán); 但是要注意一點的是break只能在循環(huán)語句和switch語句中使用,continue只能在循環(huán)語句中使用。所以它們的局限性也很大。

      這個小示例說明,goto不單單是一個語句,它是一種解決問題的思路和編程習慣,習慣了它的人,或者是想用它的人,即使不用goto也會寫出類似goto邏輯出來。它的優(yōu)點是會更容易的幫助找出解決方案。它的缺點也是眾人皆知。但我們要避免的不單單是一個goto語句,而是這種“跳轉(zhuǎn)式”的解決思路和編程習慣。

    【理解goto語句的替代方式分析】相關(guān)文章:

    《易經(jīng)》的理解分析07-24

    對《易經(jīng)》的理解分析01-15

    《化石吟》課文的重點語句理解03-01

    《木蘭詩》教材理解分析05-03

    《化石吟》重點語句理解推薦03-01

    《化石吟》重點語句分析11-21

    課文孔乙己重點語句分析08-04

    《別了,不列顛尼亞》課文理解分析08-31

    歐陽修豐樂亭記閱讀理解及答案分析01-19

    內(nèi)經(jīng)的補血方式02-08

    手机看片久久国产免费| 樱花动漫官方网站| 久久久久免费精品国产| 国产乱人无码伦av在线a| 99re热线视频这里只有精品| 国产成人综合亚洲精品| 成人精品一区二区三区中文字幕| 久久99热狠狠色精品一区| 久久精品国内一区二区三区| 亚洲第一免费网站|