SORU
12 NİSAN 2010, PAZARTESİ


Neden bu Ruby nesne iki to_s var ve görünen yöntemler aynı şeyi inceleyin.

Neden bu Ruby nesne iki to_s var ve aynı şeyi yöntemleri inceleyin. Ya da, öyle görünüyor.

p çağrıları 4* *ve onun temsil eden nesne/baskı çağrı to_s koyar.

Eğer kaçarsam

class Graph
  def initialize
    @nodeArray = Array.new
    @wireArray = Array.new
  end
  def to_s # called with print / puts
    "Graph : #{@nodeArray.size}"
  end
  def inspect # called with p
    "G"
  end
end

if __FILE__ == $0
  gr = Graph.new
  p gr
  print gr
  puts gr
end

Anladım

G
Graph : 0
Graph : 0
  • Neden Ruby iki işlevi de aynı şeyi yapmak zorunda mı? to_s inspect arasında ne fark var?
  • puts, print p arasındaki fark nedir?

Ben to_s inspect fonksiyon açıklama, şöyle olsun.

#<Graph:0x100124b88>
#<Graph:0x100124b88>

CEVAP
12 NİSAN 2010, PAZARTESİ


inspect hata ayıklama ve son kullanıcı veya görüntüleme amaçları için to_s daha fazlası için kullanılır.

Örneğin, [1,2,3].to_s [1,2,3].inspect farklı çıkış üretir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AllYourNewsByMe

    AllYourNewsB

    18 Temmuz 2011
  • Charles Griffin Gibson

    Charles Grif

    26 NİSAN 2006
  • Tianna Sierra Dance

    Tianna Sierr

    16 EYLÜL 2013