• 0

ماذا يعني رمز $ في لغة روبي؟

أجد في الكثير من التطبيقات المكتوبة لغة روبي رمز $، فما فائدة هذا الرمز؟ وكيف أستطيع استخدامه؟
مثال:

root = File.expand_path('../../..', __FILE__)
 begin
 require "#{root}/vendor/gems/environment"
 rescue LoadError
 $:.unshift("#{root}/activesupport/lib")
 $:.unshift("#{root}/actionpack/lib")
end

lib = File.expand_path("#{File.dirname(__FILE__)}/../lib")
$:.unshift(lib) unless $:.include?('lib') || $:.include?(lib)

require 'rubygems'
require 'test/unit'

require 'action_mailer'
require 'action_mailer/test_case'

فإلى ماذا يشير رمز $ في هذا المثال؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يشير هذا الرمز في لغة روبي إلى المتغيرات العامة والتي تختلف عن المتغيرات المحلية ومتغيرات المثيل (@instance variable) ومتغيرات الصنف (@@class variable)، وهي تستخدم في العادة للبحث عن الملفات الخارجية كما يقول هذا المرجع:

$: تحميل المسار للسكربتات والوحدات الثنائية (binary modules) عن طريق load أو require

لذلك فإن السطر التالي:

$:.unshift

يشبه من ناحية عمله هذا السطر:

$LOAD_PATH.unshift

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن