私は次のようになりますプログラムがあります。$offset
の使用は少し奇妙なようだRubyでグローバル変数や定数をどのように使用しますか?
$offset = Point.new(100, 200);
def draw(point)
pointNew = $offset + point;
drawAbsolute(point)
end
draw(Point.new(3, 4));
を。
C言語では、関数の外に何かを定義すると、自動的にグローバル変数になります。なぜRubyでは$offset
にする必要がありますが、offset
にすることはできませんが、それでもグローバルにすることはできますか?それがoffset
なら、それはローカルですか?しかし、それは非常にグローバルな感じがするので、どこにローカル。
上記のコードを書く良い方法はありますか? $offset
の使用は、最初は少し醜いかもしれません。
アップデート:私はclass
定義内のこのオフセットを置くことができますが、2またはいくつかのクラスは、この定数を使用するために何が必要な場合は?この場合、まだ$offset
を定義する必要がありますか?
これは分かりませんが、Rubyでは行頭にセミコロンを置く必要はありません。あなたは使用する必要があります。同じ行の複数のステートメントを区切る。 "a = 5; b = 10" – mikej