将模板从Java转换为Scala时,我注意到以下带有多行注释的怪癖可以简化为以下代码段:
/**
* /*
*/
class Blah {}
Run Code Online (Sandbox Code Playgroud)
上述代码无法使用"error:unclosed comment"编译,而在Java中有效.
这证明是有问题的,因为它使得更难以记录例如接受全球型字符串(例如"需要类似路径something/*.myformat").
这是一个错误还是一个功能?
事实上,这是一个特色.引用Scala语言规范的1.4节:
多行注释是
/*和之间的一系列字符*/.多行注释可以嵌套,但需要正确嵌套.因此,类似的评论/* /* */将被拒绝为具有未终止的评论.
(我的)
幸运的是,在你需要它的情况下(比如问题中的glob示例)通过转义/或*文字来解决这个问题相对容易,例如:
/**
* /*
*/
Run Code Online (Sandbox Code Playgroud)
它在生成的Scaladoc中正确显示.
| 归档时间: |
|
| 查看次数: |
1857 次 |
| 最近记录: |