在size的文档中,我们可以读取 here,’size()是长度的别名’.对于长度( doc)“返回self中的元素数.可以为零.”和那个长度“也别名为:大小”.功能可能非常相似,但我想知道不同的实现是否
你可以在source code of Ruby 2.3.1中看到这是一个别名:
rb_define_alias(rb_cArray, "size", "length");
此外,如果您查看pry和pry-doc,您可以看到它执行的代码完全相同:
[1] pry(main)> list = [1,2]
=> [1, 2]
[2] pry(main)> $list.size
From: array.c (C Method):
Owner: Array
Visibility: public
Number of lines: 6
static VALUE
rb_ary_length(VALUE ary)
{
long len = RARRAY_LEN(ary);
return LONG2NUM(len);
}
[3] pry(main)> $list.length
From: array.c (C Method):
Owner: Array
Visibility: public
Number of lines: 6
static VALUE
rb_ary_length(VALUE ary)
{
long len = RARRAY_LEN(ary);
return LONG2NUM(len);
}
