هل _VERSION هو المتغير العام الوحيد المتبقي في Lua 5.1؟

StackOverflow https://stackoverflow.com/questions/146704

  •  02-07-2019
  •  | 
  •  

سؤال

في حيرة من أمر وثائق Lua 5.0 التي تشير إلى أشياء مثل _LOADED, LUA_PATH, _ALERT وما إلى ذلك (التي لم أتمكن من استخدامها في Lua 5.1)، اكتشفت أنه تمت إزالة كل هذه العناصر ووضع الوظيفة في مكان آخر.هل أنا على حق في الاعتقاد بأن المتغير العالمي الوحيد المتبقي في Lua 5.1 هو _VERSION?

هل كانت مفيدة؟

المحلول

يبدو أن المستندات تعتقد أن هذا بالكاد القضية....

_g متغير عالمي (وليس دالة) يحمل البيئة العالمية (أي ، _g._g = _g).لوا نفسها لا تستخدم هذا المتغير.تغيير قيمته لا يؤثر على أي بيئة ، ولا العكس.(استخدم setfenv لتغيير البيئات.)

يبدو أن هناك أيضًا _PROMPT و_PROMPT2، ولكن فقط عند استخدام lua المستقلة بشكل تفاعلي:

إذا كان المتغير العالمي _prompt يحتوي على سلسلة ، فسيتم استخدام قيمته كمطالبة.وبالمثل ، إذا كان المتغير العالمي _prompt2 يحتوي على سلسلة ، فسيتم استخدام قيمته كمطالبة ثانوية (صدرت أثناء عبارات غير مكتملة).لذلك ، يمكن تغيير كلا المطالبين مباشرة على سطر الأوامر أو في أي برامج LUA من خلال التعيين إلى _prompt.

نصائح أخرى

على افتراض أنك لا تفتح أي ليبز، هناك أيضا _G, pairs, ipairs و newproxy.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top