summaryrefslogtreecommitdiff
path: root/sample/list.rb
diff options
context:
space:
mode:
Diffstat (limited to 'sample/list.rb')
-rw-r--r--sample/list.rb42
1 files changed, 27 insertions, 15 deletions
diff --git a/sample/list.rb b/sample/list.rb
index e0b5b383b0..1a20c954d0 100644
--- a/sample/list.rb
+++ b/sample/list.rb
@@ -1,10 +1,16 @@
-# Linked list program
+# Linked list example
class MyElem
+ #���饹�᥽�å�(����)�����
def MyElem.new(item)
- super.init(item)
+ # �����ѡ����饹�Υ᥽�åɤθƤӽФ�(���ξ��ϥ��饹Class)
+ elm = super # �ѿ�������פ�ʤ�
+ #elm���Ф���᥽�åɤθƤӽФ�
+ elm.init(item)
end
-
+
+ # �̾�Υ᥽�å����
def init(item)
+ # @�ѿ��ϥ��󥹥����ѿ�(������פ�ʤ�)
@data = item
@next = nil
self
@@ -18,6 +24,7 @@ class MyElem
@next
end
+ # ��obj.data = val�פȤ����Ȥ��˰��ۤ˸ƤФ��᥽�å�
def next=(new)
@next = new
end
@@ -42,9 +49,12 @@ class MyList
end
end
+ # ���֥������Ȥ�ʸ������Ѵ�����᥽�å�
+ # ��������������print�Ǥ�ɽ�����Ѥ��
def to_s
str = "<MyList:\n";
for elt in self
+ # ��str = str + elt.data.to_s + "\n"�פξ�ά��
str += elt.data.to_s + "\n"
end
str += ">"
@@ -66,16 +76,18 @@ class Point
sprintf("%d@%d", @x, @y)
end
end
-
-list1 = MyList.new
-list1.add_to_list(10)
-list1.add_to_list(20)
-list1.add_to_list(Point.new(2, 3))
-list1.add_to_list(Point.new(4, 5))
-list2 = MyList.new
-list2.add_to_list(20)
-list2.add_to_list(Point.new(4, 5))
-list2.add_to_list(list1)
-print("list1:\n", list1, "\n")
-print("list2:\n", list2, "\n")
+# ����ѿ���`$'�ǻϤޤ롥
+$list1 = MyList.new
+$list1.add_to_list(10)
+$list1.add_to_list(20)
+$list1.add_to_list(Point.new(2, 3))
+$list1.add_to_list(Point.new(4, 5))
+$list2 = MyList.new
+$list2.add_to_list(20)
+$list2.add_to_list(Point.new(4, 5))
+$list2.add_to_list($list1)
+
+# ۣ��Ǥʤ��¤�᥽�åɸƤӽФ��γ�̤Ͼ�ά�Ǥ���
+print "list1:\n", $list1, "\n"
+print "list2:\n", $list2, "\n"