繁体   English   中英

Julia 语法 - 带有 where 子句的函数的返回类型注释

Julia syntax - Return type annotation for a function with a where clause

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我是朱莉娅的新手。 这可能是一个愚蠢的问题,但我似乎无法正确理解此问题的语法。

我可以

check_condition(func::F, arg::Int) where {F} = func(arg)

check_condition(func::Function, arg::Int)::Bool = func(arg)

但是如果我想同时包含类型注释和外部 where 子句,我会不断收到语法错误。 以下似乎不起作用:

check_condition(func::F, arg::Int) where {F}::Bool = func(arg)
(check_condition(func::F, arg::Int) where {F})::Bool = func(arg)
check_condition(func::F, arg::Int)::Bool where {F} = func(arg)
check_condition::Bool(func::F, arg::Int) where {F} = func(arg)

这确实有效,但我相信它不等于我想要的,因为类型参数对方法体隐藏(假设我想在其中的某个地方使用它)

check_condition(func::F where {F}, arg::Int)::Bool = func(arg)

写这个的正确方法是什么?

谢谢

1 个回复

使用:

(check_condition(func::F, arg::Int)::Bool) where {F} = ...

请注意::Bool会转换为Bool 例如:

julia> (check_condition(func::F, arg::Int)::Bool) where {F}= 1
check_condition (generic function with 1 method)

julia> check_condition(5,7)
true
1 带有 WHERE 子句的 JOIN 结果的 Android Room 返回类型

我有一个以下query ,它返回聊天列表及其按上次消息时间排序的最后消息: 和ChatDao相应方法: 我在数据库检查器中测试了这个查询,它工作正常。 但是,我不知道如何返回查询结果。 我不想为ChatWithMessage类中的Chat和Message实体处理@Embedded因为它们具有 ...

2 带有where子句的SQL sum函数

我正在使用MsSQL,我想在满足某些条件的情况下添加一些值。 是否可以在sum()函数中使用WHERE子句? 或者是excel SUMIF()的等效函数。 ...

5 带有 where 子句的 LINQ 方法语法

我正在尝试将 LINQ 查询语法转换为方法语法,但它不起作用。 下面是我的查询语法 quotation = (from q in quotation where q.IsQuotation || !LineCodeUtility.IsNEWQuotation (q) ...

2020-04-18 06:26:58 1 69   c#/ linq
7 使用“where”语法参数化Julia中的函数[重复]

这个问题在这里已有答案: `where`在julia-0.6中的函数定义 1回答 阅读关于参数化方法的Julia 文档 ,我不能为我的生活找出这两个定义之间的区别 julia> function f{T<:Real}(x::T) println ...

2017-08-17 02:47:25 1 183   julia
10 带有WHERE子句的SQLite rawQuery()返回计数

我有一个方法,它使用某些字符串并将其搜索到sqlite数据库中。 如果字符串存在/不存在于数据库中,则应返回int count(行数),我该如何实现? 这是我针对该特定功能的代码,即使我指定的字符串存在于databse中,每次运行时它都会返回零。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM