thể trùng lặp:
What does :: mean in Ruby?. vs :: (dot vs đúp dấu hai chấm) để gọi một phương pháp
Tôi đang học Ruby từ Poignant Guide to Ruby và trong một số ví dụ mã, Tôi đã xem xét việc sử dụng dấu hai chấm và dấu chấm dường như được sử dụng cho cùng một mục đích:
File::open('idea-' + idea_name + '.txt', 'w') do |f|
f << idea
end
Trong đoạn mã trên, dấu hai chấm đang được sử dụng để truy cập phương thức open
của lớp File
. Tuy nhiên, sau đó tôi đi qua mã mà sử dụng một dấu chấm cho cùng một mục đích:
require 'wordlist'
# Print each idea out with the words fixed
Dir['idea-*.txt'].each do |file_name|
idea = File.read(file_name)
code_words.each do |real, code|
idea.gsub!(code, real)
end
puts idea
end
thời gian này, một dấu chấm đang được sử dụng để truy cập vào các phương pháp read
của lớp File
.
File.read()
và
File::open()
Xem [Thế nào là Ruby đúp dấu hai chấm (: :) tất cả về] (http://stackoverflow.com/questions/3009477/what-is-rubys- hai dấu hai chấm). – sczizzo
Tôi thực sự không nghĩ rằng đây là một bản sao của điều đó. Không nơi nào trong câu hỏi đó hoặc câu trả lời của nó là việc sử dụng '::' đối với các phương thức singleton được thảo luận. –
Tôi đồng ý. Tôi đã thấy một câu hỏi khác trước khi tôi mở câu hỏi này. Tuy nhiên, câu trả lời cho câu hỏi của tôi không được đưa ra một cách rõ ràng. Câu hỏi khác thảo luận về việc sử dụng chỉ của toán tử ::. Có thể gợi ý của nó về việc sử dụng toán tử dấu chấm một cách tinh tế, nhưng khi bạn mới làm quen với cái gì đó, bạn cần câu trả lời dưới dạng rất khác biệt. Và như tôi đã nói, tôi mới làm quen với ruby. – flyingarmadillo