f符号签名中的#符号是什么意思? [英] what does the # symbol mean in an f# function signature?

查看:55
本文介绍了f符号签名中的#符号是什么意思?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我看过这样定义的函数:

I have seen a function defined like this:

let private applyTarget (logger:#ILogger) ceiling target =
    logger.Debug "enforce ceiling"
    match target > ceiling with
    | true -> ceiling | false -> target

#符号在签名中是什么意思?

What does the # symbol mean in the signature?

logger:ILogger logger:#ILogger 之间有什么区别?

推荐答案

类型签名 #t 被称为灵活类型" ,并且只是的简写>'a,当'a:>t .

A type signature #t is called "flexible type", and is just shorthand for 'a when 'a :> t.

也就是说, #t 表示" t 的任何子类型" .

That is, #t means "any subtype of t".

这篇关于f符号签名中的#符号是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆