Menu
Coddy logo textTech

תוויות ארגומנטים

חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 54 מתוך 86.

Swift מאפשרת לך לשלוט באופן שבו קריאות לפונקציות נקראות באמצעות תוויות ארגומנטים. תווית ארגומנט היא מה שמשתמשים בו כשקוראים לפונקציה, ואילו שם הפרמטר הוא מה שמשתמשים בו בתוך גוף הפונקציה.

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

func greet(to name: String) {
    print("Hello, \(name)!")
}

greet(to: "Alice")  // פלט: Hello, Alice!

כאן, to היא תווית הארגומנט (שמשמשת בעת הקריאה לפונקציה), ו-name הוא שם הפרמטר (שמשמש בתוך הפונקציה). כך הקריאה נשמעת טבעית יותר: "greet to Alice."

לפעמים רוצים להשמיט את התווית לגמרי כדי שהקריאות יהיו נקיות יותר. משתמשים בקו תחתון (_) בתור תווית הארגומנט:

func square(_ number: Int) -> Int {
    return number * number
}

print(square(5))  // פלט: 25

בלי הקו התחתון, היה צריך לכתוב square(number: 5). הקו התחתון מסיר את הדרישה הזאת, והופך את הקריאה לפשוטה יותר כשהשם של הפונקציה כבר מבהיר את מטרתה.

challenge icon

אתגר

קל

צרו שתי פונקציות שמדגימות טכניקות שונות של תוויות ארגומנטים:

פונקציה 1: send

  • השתמשו בתווית הארגומנט message עם שם הפרמטר text (סוג String)
  • השתמשו בתווית הארגומנט to עם שם הפרמטר recipient (סוג String)
  • החזירו מחרוזת בפורמט: "Sending '[text]' to [recipient]"

פונקציה 2: double

  • השתמשו בקו תחתון _ כדי להשמיט את תווית הארגומנט
  • שם הפרמטר number (סוג Int)
  • החזירו את המספר כשהוא מוכפל ב-2

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

הקלט שתקבלו:

  • שורה ראשונה: טקסט ההודעה (לדוגמה, "Hello")
  • שורה שנייה: שם הנמען (לדוגמה, "Alice")
  • שורה שלישית: מספר להכפלה ב-2 (לדוגמה, "7")

לדוגמה, אם הקלט הוא "Hello", "Alice" ו-"7", הפלט צריך להיות:

Sending 'Hello' to Alice
14

נסו בעצמכם

// קראו את הקלט
let messageText = readLine()!
let recipientName = readLine()!
let numberToDouble = Int(readLine()!)!

// TODO: כתבו את הקוד שלכם למטה
// הגדירו את הפונקציה 'send' עם תוויות הארגומנטים 'message' ו-'to'


// הגדירו את הפונקציה 'double' ללא תווית ארגומנט, באמצעות '_'


// קראו לשתי הפונקציות והדפיסו את התוצאות
quiz iconבחנו את עצמכם

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

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

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