Ruby中的未初始化常量
我正在努力完成Ruby的教程,关于CodeAcademy。下面的代码给出了错误 “未初始化常量列表::任务(名称错误) from to_do.rb:2:in main“ 我知道这可能与List类无法访问Task类有关,但我看不出这会在哪里发生故障?代码如下Ruby中的未初始化常量,ruby,Ruby,我正在努力完成Ruby的教程,关于CodeAcademy。下面的代码给出了错误 “未初始化常量列表::任务(名称错误) from to_do.rb:2:in main“ 我知道这可能与List类无法访问Task类有关,但我看不出这会在哪里发生故障?代码如下 #list class class List attr_reader :all_tasks if __FILE__ == $PROGRAM_NAME my_list = List.new
#list class
class List
attr_reader :all_tasks
if __FILE__ == $PROGRAM_NAME
my_list = List.new
puts 'You have created a new list'
my_list.add(Task.new('Make Breakfast'))
puts 'You have added a task to the Todo List'
end
def initialize
@all_tasks = []
end
def add(task)
@all_tasks << task
end
end
#class task
class Task
attr_reader :description
def task_item(desription)
@new_item = description
end
end
#列表类
班级名单
属性读取器:所有任务
如果_文件_==$PROGRAM\u名称
my_list=list.new
放置“您已创建新列表”
my_list.add(Task.new(“制作早餐”))
放置“您已将任务添加到待办事项列表”
结束
def初始化
@所有_任务=[]
结束
def添加(任务)
@运行此行时的所有任务
my_list.add(Task.new('Make Breakfast'))
尚未定义任务
。几行之后就会发生这种情况
只需在运行此行时交换
任务
和列表
类的定义。
my_list.add(Task.new('Make Breakfast'))
尚未定义任务。几行之后就会发生这种情况
只需交换
任务
和列表
类的定义。当您以脚本形式从命令行运行该文件时,声明顺序很重要。如果将任务声明移到列表上方,您会发现它将修复有问题的错误。当您从命令行以脚本形式运行该文件时,声明顺序很重要。如果您将任务声明移到列表上方,您会发现它将修复有问题的错误。有错误跟踪吗?\uuuuuu文件\uuuuuu==$PROGRAM\u NAME
。将其移到类之外或调用该方法。当该值为true时,它将运行并尝试访问尚未定义的任务。从initialize
调用此方法是一种很好的做法。有任何错误跟踪吗?\uuuu FILE\uuuu==$PROGRAM\u NAME
。将其移到类之外或调用该方法。当该值为true时,它将运行并尝试访问尚未定义的任务。从initialize
调用此方法是一种很好的做法。列表的初始值设定项和add
都没有定义,OP很快就会发现。此脚本必须从列表类中提取并移动到文件末尾。列表的初始值设定项和add
都没有定义,OP很快就会发现。此脚本必须从列表类中提取并移动到文件末尾。