用#代替。在API文档中

时间:2010-05-19 14:30:17

标签: ruby documentation

在API文档中,有时甚至在Stack Overflow的讨论中使用过,我有时会看到使用井号(#)而不是点(。)作为类名和方法名之间的分隔符。例如:

Settings#maxPageSize

我想知道这种用法意味着什么,它来自哪里?

2 个答案:

答案 0 :(得分:3)

我一直认为区别在于Settings.maxPageSize似乎意味着你实际上可以写出那个(即它是一个静态方法),并且pound是那里表示它只是对方法的引用,而不是您可以执行的代码。

虽然我可能完全错了=)

因此,对于静态方法,您实际上可以引用它们Settings.maxPageSize,但是对于实例方法,您可以选择提出新的约定,例如Array#sort来表示特殊的东西正在进行,或者,为了达到同样的完整性,你必须写

myArray.sort // when myArray is of the type Array

修改

Amadan的回复似乎证实了我的解释,但Settings.maxPageSize也没有用于静态方法;相反,那将是Settings::maxPageSize,而.完全被保留,例如代码,这对我来说很有意义。

答案 1 :(得分:3)

假设你的意思是Ruby(这是我能用这些约定思考的第一种语言),这里解释一下:

Why are methods in Ruby documentation preceded by a hash sign?