【问题标题】:Is there any style guidelines about using implicit parameter with default value in scala?是否有关于在 scala 中使用具有默认值的隐式参数的样式指南?
【发布时间】:2014-09-19 04:48:29
【问题描述】:

可以像这里这样使用这样的解决方案吗:

def convert[T](x: T)(implicit format = Default) = ...

如果您不需要,它允许您不指定隐式。但是许多库(至少 Lift Json 和 Scala Concurrent)避免了这种默认的隐式值,并推动用户始终指定隐式。对图书馆设计师有什么建议吗?

【问题讨论】:

    标签: scala implicits


    【解决方案1】:

    Retronym 顺便说一句:

    https://groups.google.com/d/msg/scala-user/6MudBXELxVQ/ul67d5Rh4b4J

    可以说,用默认值定义隐式参数是一种糟糕的风格

    比较:

    implicit parameter VS default parameter value

    这是一个很好的:

    https://stackoverflow.com/a/20016152/1296806

    【讨论】:

    • 短语“可以说用默认值定义隐式参数的风格很差,但结果并不令人惊讶 IMO”:)
    • 关于最后一个 - 有一个可能的选项来解决这个问题 - stackoverflow.com/a/25919012/1809978,但我没有提供代码(并且这样的宏需要在单独的 jar 中,所以它非常有问题使用)。
    • 这不是巧合。
    猜你喜欢
    • 2012-03-07
    • 1970-01-01
    • 2012-04-30
    • 2017-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多