-1

http://www.ruby-lang.org/en/documentation/他们没有提到 SEEK 作为一种方法,但在下面的程序中他们使用了 'seek' 作为一种方法?

input_file = ARGV[0]
def print_all(f)
  puts f.read()
end
def rewind(f)
  f.seek(0, IO::SEEK_SET)
end
def print_a_line(line_count, f)
  puts "#{line_count} #{f.readline()}"
end
current_file = File.open(input_file)
puts "First let's print the whole file:"
puts # a blank line
print_all(current_file)
puts "Now let's rewind, kind of like a tape."
rewind(current_file)
puts "Let's print three lines:"
current_line = 1
print_a_line(current_line, current_file)
current_line = current_line + 1
print_a_line(current_line, current_file)
current_line = current_line + 1
print_a_line(current_line, current_file)
4

1 回答 1

1

IO::SEEK_SET是一个常数。全部大写的东西通常是红宝石中的常量

::也可以用于方法调用,但这相当陈旧,并且在 2.1 中已从 ruby​​ 中删除(如果我没记错的话)。

于 2013-08-02T10:27:31.867 回答