Menu
CoddyTech

למה להשתמש במשתנים מקומיים?

חלק מהיחידה יסודות במסלול ה-Lua של Coddy. שיעור 85 מתוך 90.

מניעת התנגשויות בשמות: היתרון החשוב ביותר של משתנים מקומיים הוא שהם מונעים ממך לדרוס בטעות משתנים אחרים בעלי אותו שם. כשמשתמשים במשתנים גלובליים לאורך כל התוכנית, קל להשתמש בטעות שוב בשם של משתנה ולשנות ערך שלא התכוונת לשנות.

score = 100  -- הניקוד של השחקן

function countEnemies()
    score = 0  -- נועד לשמש כמונה רק עבור הפונקציה הזו
    for i = 1, 3 do
        score = score + 1
    end
    return score
end

countEnemies()
print(score)  -- 3: הניקוד של השחקן נדרס!

הפונקציה הייתה אמורה להשתמש במונה משלה, אבל מכיוון ש־score הוא גלובלי, היא שינתה במקום זאת את הניקוד של השחקן. הוספת local מעניקה לפונקציה משתנה נפרד שקיים רק בתוכה:

function countEnemies()
    local score = 0  -- משתנה חדש, רק בתוך הפונקציה הזו
    for i = 1, 3 do
        score = score + 1
    end
    return score
end

countEnemies()
print(score)  -- 100: המשתנה הגלובלי score לא השתנה

בעזרת משתנים מקומיים, לכל פונקציה ולכל בלוק יש משתנים נפרדים משלהם, כך שקוד במקום אחד לא יכול לשנות בטעות ערכים שנעשה בהם שימוש במקום אחר.

נסו בעצמכם

השיעור הזה לא כולל אתגר קוד.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Lua אונליין