שאלה

omergre

New member
שאלה

שלום, שאלה די בסיסית לגבי מיקום הגדרת המשתנים: מה ההבדל בין הגדרת משתנים עבור בפרוצדורה בשורת הפרוצדורה , לדוגמא :
Sub MainD(x As Integer, y As String, z As String, w As String)​
לבין הגדרת משתנים בצורה הרגילה ע"י Dim בתוך הפרוצדורה אגב, ברור לי למה בפונקציה וגם ב"ארוע" מוגדרים המשתנים בשורה העליונה. אבל לא ברורים לי המקרים האחרים כמו בדוגמא שנתתי
 

MaD-d0g

New member
אם אני מבין מה שאתה שואל...

אז הגדרת משתנים בשורת הפרוצדורה/פונקציה אלו פרמטרים... ולא סתם משתנים שנוצרים בתוך הפרוצדורה.
 

omergre

New member
אוקי

אם כך אז מה ההבדל בין פרמטרים שמוגדרים בפרוצדורה שאינה ארוע לבין משתנים שמוגדרים בתוך הפרוצדורה? למה משמש כל אחד מהם? תודה
 

MaD-d0g

New member
משתנה שמוגדר בפרוצדורה..

משתנה שמוגדר בפרוצדורה הוא פרמטר.. צריכים לקבל אותו ולהשתמש בו. לדוגמא אם תבנה פונקציה שמקבלת כפרמטר 2 מספרים ומוצאת את המכנה המשותף הקטן ביותר שלהם.. את 2 המספרים תקבל כפרמטרים. את חישובי הביניים תבצע בעזרת משתנים זמניים שתיצור בתוך הפרוצדורה.
 

omergre

New member
ומתי משתמשים בפרמטרים בפרוצדורה (לא פונקציה)?

האם זה חיוני או שאפשר להשיג את אותה התוצאה ע"י משתנים ?
 

MaD-d0g

New member
כן. המטרות שונות לגמרי

זה יכול להיות פונקציה ויכול להיות פרוצדורה.. זה לא משנה. נניח פונקציה שמחזירה ערך של המכנה המשותף הגבוה ביותר... או פרוצדורה שמעתיקה קובץ ממיקום א' למיקום ב' (המיקומים מתקבלים בפרמטרים
) מאוד חיוני.. משתנים פנימיים נועדו כדי לגבצע חישובים בתוך הפונקציה/פרוצדורה.. ולא יותר
 
למעלה