91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

Haskell怎么處理錯誤和異常

小億
94
2024-04-16 15:52:11
欄目: 編程語言

在Haskell中處理錯誤和異常通常使用EitherMaybe類型來表示可能的錯誤情況,并使用catch函數來捕獲異常。

  1. 使用Either類型處理錯誤:
-- 定義一個可能返回錯誤的函數
divide :: Int -> Int -> Either String Int
divide _ 0 = Left "Division by zero"
divide x y = Right (x `div` y)

-- 調用函數并處理錯誤
case divide 10 2 of
  Left err -> putStrLn err
  Right result -> print result
  1. 使用Maybe類型處理錯誤:
-- 定義一個可能返回錯誤的函數
divide :: Int -> Int -> Maybe Int
divide _ 0 = Nothing
divide x y = Just (x `div` y)

-- 調用函數并處理錯誤
case divide 10 2 of
  Nothing -> putStrLn "Division by zero"
  Just result -> print result
  1. 使用catch函數捕獲異常:
import Control.Exception

-- 定義一個可能引發異常的函數
divide :: Int -> Int -> Int
divide x y = if y == 0 then error "Division by zero" else x `div` y

-- 使用catch函數捕獲異常
main = catch (print (divide 10 2))
             (\e -> putStrLn $ "Error: " ++ show (e :: SomeException))

以上是在Haskell中處理錯誤和異常的一些常見方法,開發者可以根據具體情況選擇合適的方式來處理錯誤和異常。

0
台江县| 特克斯县| 葵青区| 炎陵县| 绥宁县| 宁远县| 揭东县| 乳山市| 巴里| 仁怀市| 图木舒克市| 漳平市| 衡南县| 都江堰市| 肥城市| 友谊县| 夏河县| 通道| 依安县| 灯塔市| 临夏市| 靖江市| 互助| 措美县| 乌鲁木齐县| 浦城县| 普兰店市| 平乡县| 互助| 乌恰县| 乌鲁木齐县| 西昌市| 贞丰县| 桂林市| 台南县| 乌苏市| 大渡口区| 托克托县| 罗城| 河间市| 顺平县|