المبرمج العربي نشر 19 ديسمبر 2015 أرسل تقرير نشر 19 ديسمبر 2015 لنفترض أنني أستخدم irb وكتبت a = 5، فكيف أستطيع حذف تعريف a لكي يرجع لي روبي NameError عندما أكتب له a ؟ اقتباس
0 هشام رزق الله نشر 19 ديسمبر 2015 أرسل تقرير نشر 19 ديسمبر 2015 هنالك عدّة طرق في لغة روبي لإلغاء تعريف المتغيرات في irb وأسهل هذه الطرق تنظيف سجلات المتغيرات المحلية عن طريق استدعاء "صدفة irb الفرعية" (irb subshell) كما في المثال التالي:$ irb irb(main):001:0> a = "a" => "a" irb(main):002:0> defined? a => "local-variable" irb(main):003:0> irb # step into subshell with its own locals irb#1(main):001:0> defined? a => nil irb#1(main):002:0> a NameError: undefined local variable or method `a' for main:Object from /Users/dean/.irbrc:108:in `method_missing' from (irb#1):2 irb#1(main):003:0> exit => #<IRB::Irb: @context=#<IRB::Context:0x1011b48b8>, @signal_status=:IN_EVAL, @scanner=#<RubyLex:0x1011b3df0>> irb(main):004:0> a # now we're back and a exists again => "a" أما في لغة روبي (كسكربت) يمكنك استخدام توابع مختلفة مثل remove_class_variable و remove_instance_variable و remove_const للمتغيرات العامة لكن في الوقت الحالي لا يوجد أي توابع لإلغاء تعريف قيم متغيرات محلية. اقتباس
السؤال
المبرمج العربي
لنفترض أنني أستخدم irb وكتبت a = 5، فكيف أستطيع حذف تعريف a لكي يرجع لي روبي NameError عندما أكتب له a ؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.