Unreachable code是無法在任何上下文中執行的編程代碼,許多計算機語言都不允許在某段代碼無法訪問的情況下執行程序。無法訪問的代碼所產生的問題可以通過刪除有問題的代碼部分或重寫部分代碼以使該部分再次可訪問來解...
Unreachable code是無法在任何上下文中執行的編程代碼,許多計算機語言都不允許在某段代碼無法訪問的情況下執行程序。無法訪問的代碼所產生的問題可以通過刪除有問題的代碼部分或重寫部分代碼以使該部分再次可訪問來解決。在設計軟件時,與計算機進行倒立,它可以相對容易無意中創建無法訪問的代碼。程序流中的任何重大中斷都有可能導致無法訪問的代碼段。例如,意外地創建一個無限循環可能會導致它后面的所有代碼都無法訪問,因為沒有任何方法可以打破循環并繼續程序。另一種可能發生的情況是,如果一個函數在其所有代碼執行之前被編碼為返回。在這種情況下,return語句后的代碼將無法訪問。有兩種方法可以生成無法訪問的代碼。第一,在編寫原始代碼時,如果處理不正確,可能會導致部分代碼無法訪問;第二,控制結構中的錯誤在編碼過程中并不明顯,但在程序運行時,也可能導致代碼無法訪問。第一類錯誤有多種名稱,包括編碼錯誤或語法錯誤,第二類錯誤是運行時錯誤。代碼錯誤通常由解析器或編譯器捕獲,但是運行時錯誤只能通過測試并在完成后運行程序來檢測。無法訪問的代碼通常與死代碼相混淆,但兩者是截然不同的。死代碼是執行特定計算的代碼,但是對計算結果什么也不做,這和不可訪問的代碼是不一樣的,它根本就不會執行不可訪問代碼和死代碼通常都可以從程序中刪除而不受損害,或者通過仔細注意程序的控制流,它們可以重新集成到程序中。此外,在編碼期間和運行程序之前,通常都可以檢測到不可訪問和死代碼。盡管其定義看起來很可怕,無法訪問的代碼通常比較容易修復。出現無法訪問的代碼通常表示控制流有問題,因此仔細分析程序的控制流通常可以在短時間內識別出有問題的代碼。如果在整個編碼過程中仔細監視程序的控制流,生成無法訪問的代碼的可能性非常低
-
發表于 2020-08-07 16:29
- 閱讀 ( 729 )
- 分類:電腦網絡