如何在F#中声明通用异常类型

如何在F#中声明通用异常类型

本文介绍了如何在F#中声明通用异常类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何定义以下异常?

exception CustomExn<'TMessage> of 'TMessage list


推荐答案

也许您可以从System继承

Maybe you can just inherit from System.Exception?

type CustomExn<'TMessage> (message:'TMessage list) =
    inherit System.Exception ()

let test =
    try
        raise (CustomExn["string"] )
    with
    | :? CustomExn<string> -> "CustomExn of string"
    | :? CustomExn<int> -> "CustomExn of int"
    | _ ->  "Everything else"

这篇关于如何在F#中声明通用异常类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-23 07:56