![]() |
.. (לתיקייה המכילה) | |
האם פונקציות ריפוי וחיזוק (למשל, אבל יש עוד דוגמאות) אמורות להיות יכולות להוריד חיים או כח?
|
אם מתקבל למשל מס' שלילי, אל תעשו כלום. (כמו קבלה של ערך 0) |
האם אפשר להשתמש בstd::string?
|
ניתן להשתמש ב-std::string (הוא לא חובה בתרגיל זה ומדברים עליו בתרגול 6) שימו לב, אסור להשתמש בתרגיל ב-STL פרט ל-std::string, std::cout/cin |
הבנאי של המחלקה אמור לקבל ערכים כאשר קוראים לו, מה צריך לעשות עבור ערכים שליליים: להקריס את התוכנית או לאתחל לערך המינימאלי המותר?
|
במקרה והערכים המתקבלים בבנאי אינם תקינים, יש לאתחל את השדות לערכים הדיפולטיים (למשל force=5). |
שלום רב
אשמח לדעת עד איזה מצגת בתרגול וגם עד איזה מצגת מההרצאות יש את החומר שנחוץ להשלמת תרגיל בית 2?
|
עד סוף תרגול 5, אבל גם תרגול 6 רלוונטי כחזרה (העמסת אופרטורים לא רלוונטי) לגבי ההרצאות - עד הרצאה 4 |
האם ניתן להשתמש בauto בתרגיל בית 2?
|
לא. |
האם ניתם להוסיף פעולות ממשק במחלקה Player כלומר להוסיף פקודות נוספות ל Player.h ?
| לא.רק הממשק שהוגדר לכם במסמך. |
עבור הפעולה הבאה האם ניתן להניח שמתקיים שאנחנו מקבלים hp>0?
void Player::heal(int hp)
|
לא, אתם לא יכולים להניח שהקלט הוא אי שלילי. במקרה ומתקבלים מספרים שלילים יש להתנהג כאילו התקבל 0. |
האם ניתן להניח כי הקלט תקין בפונקציות ממשק של המחלקה player?
|
לא. |
במידה והשחקן נפגש בקלף מסוג heal ויש לו maxHP, האם התשלום יבוצע (כמובן במידה ויש לו מספיק coins)?
| כן, התשלום יבוצע. |
היי. האם אפשר להשתמש בספריה cstring?
| כן |
הדפסת תוצאות הקרב:
| תיקון לתרגיל - ההדפסה של תוצאות הקרב צריכה להיעשות בתוך הפונקציה encounter בcard ולא בתוך playNextCard. |
האם אפשר להוסיף שדות לCard.h?
| לא, אסור לשנות את Card.h. |
ניתן לשנות ולהוסיף דברים ל Mtmchkin.h (מעבר למה שמבוקש) ?
| כן |
isOver יכולה להיות const?
| כן, היא צריכה להיות const. הקובץ mtmchkin.h התעדכן. |
do we have to check if the player name that we receive in the Constructor is valid?
|
בגלל שאין חריגות, אין צורך לטפל במקרה הזה. |
in the build of Player, if we get a 0 for force and 0 for maxHP, should we use those values or the default ones?
|
המספרים צריכים להיות חיובים, אם מתקבל 0 בבנאי יש להגדיר את הערכים הדיפולטים. |
בבנאי כשאני מקבל את הרשימת קלפים, להשתמש בה או ליצור אחת שתהיה member של ה class שלי ואז להעתיק את הרשימה שהבנאי קיבל לרשימה שלי?
|
עליכם להעתיק, ולא להסתמך על זיכרון שבבעלות המשתמש. |
במחלקה player, מה צריך לבצע c'tor שלא מקבל פרמטרים?
האם עלינו למחוק את הdefault c'tor ולא לאפשר בנייה של player ללא פרמטרים?
|
הממשק של player אמור להיות כפי שתואר לכם. אין להרחיב את הממשק מעבר למה שתואר. בmtmchkin אפשר להרחיב את הממשק אם צריך. |
מה עושים אם new לא מצליח?
|
בתרגיל בית 2 אין צורך לטפל במקרה הזה. נלמד על זה בתרגול 7 בחלק של חריגות. |
בבנאי של מתמצ'קין האם ניתן להניח שאם מתקבל מערך קלפים כפרמטר, מתקבל גם הגודל שלו והגודל נכון?
כלומר שלא אפשרי שנקבל מערך לבנאי ולא נקבל את הגודל שלו או שנקבל גודל לא נכון (שיכול לגרום לחריגות מהמערך)
|
אפשר להניח שהאורך שמתקבל תקין, בהמשך נלמד ונשתמש במחלקות של מבני נתונים שיאפשרו לנו לטפל בבעיות אלה בצורה טובה יותר ולשמור על תקינות ואמינות הממשק. |
מה יש לעשות אם playNextCard() נקרא לאחר שהסתיים המשחק? (כלומר GameStatus הוא WIN או LOSS במקום MidGame)
| כלום |
מה אמורה להחזיר הפעולה pay כאשר לשחקן יש 6 מטבעות בעוד שביקשו לשלם 10 מטבעות?
להחזיר false או לשלם את הנותר?
|
להחזיר false ו*לא* לשלם את הנותר. |
האם אפשר להוסיף שדות פנימיים למחלקה Player מעבר לאלה המוגדרים לנו? בהנחה שאני לא משנה את החתימה של המתודות של המחלקה בגלל זה..
| כן |
כאשר נקרא:
א. player.pay(0)
ב. player.pay(-1)
האם צריך לחזור true או false?
|
true. מתקיים באופן ריק. |
האם צריך שיהיה לmtmchkin בנאי העתקה, ואופרטור השמה? האם אפשר לשים שדות const?
|
המקרה לא יבדק. אפשר או לשים בנאי העתקה ואופרטור השמה, בלי שדות קבועים. או לשים שדות קבועים. אין דרישה ספציפית וזה לא ייבדק. |

