עבור לתוכן

עריכה: נוספה שאלה. כיצד ליצור Random.

Featured Replies

פורסם

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

בC++ בניגוד לVB כל מערך Char נחשב String. לכן אם אני רוצה למשל ליצור "מערך של Stringים" אני עושה מערך דו מימדי? (אם אפשר בC)

כמו כן זה בערך אותה שאלה על מחלקות. האם אפשר ליצור מערך מחלקות ואולי אפילו בעזרת לולאת For ליצור לכל אחת פונקציה בניה משלה?

יש לי עוד שאלה אחת. כיצד אני עושה אפקט של בחירת מספרים אקראית? בVB יש פונקציה לזה, אבל לא נתקלתי בזה בC++.

תודה לעונים.

פורסם

אכן, בשביל מערך של string אתה צריך לעשות מערך דו מימדי.

לגבי מחלקות אתה מוזמן לפרט למה בדיוק התכוונת.

פורסם
  • מחבר

למשל יש לי דבר כזה

class hello{

int a;

string b;

long c;

};

ואז אני יכול למשל ליצור מחלקות ככה:

hello abc[4];

?

פורסם

קודם כל לא ברור מה זה string אבל זה לא ממש חשוב

ובקשר לשאלתך אין שום בעיה להגדיר מארך מסוג hello כלומר מה שכתבת נכון

פורסם
  • מחבר

קודם כל לא ברור מה זה string אבל זה לא ממש חשוב

ובקשר לשאלתך אין שום בעיה להגדיר מארך מסוג hello כלומר מה שכתבת נכון

סליחה, התבלבלתי בין הString וה-Char בגלל סוג התחביר של זה בVB. (התעסקתי עם VB איזה 4 שנים...).

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

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

פורסם

אתה יכול לעשות את זה בכמה רמות שרק תרצה

לדוגמא

class c1 {

char s[5];

}

class c2 {

c1 c1_array[5];

}

class c1[10];

c1[1].s[4] = 'c';

class c2[10]

c2[1].c1_array[3].s[2] = 'c';

וכמה שרק בא לך...

פורסם
  • מחבר

את הקטע של מערכים הבנתי, תודה.

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

class Student {

int age;

int grade;

Student (int , int);

};

ואז לאחר מכן ההגדרה של הפונקציה עצמה היא:

void Student::Student (int s_age, int s_grade)

{

Student::age = s_age;

Student::grade = s_grade;

}

ואז למשל כשאתה יוצר קלאס מסוים אתה עושה ככה:

Student Shlomo(14, 100);

הרעיון הוא שאתה מזין ערכי Default או ערכים ראשוניים תקרא לזה איך שאתה רוצה לאיברי הקלאס השונים שאתה צריך.

אם ככה, במערך האם יש אפשרות להשתמש בפונקציות בניה ולתת ערכים שונים בכל פונקציה למרות שזה מבוסס במערך?

פורסם

כן

אני מכיר את המונחים בעיקר באנגלית ככה שהשמות העבריים ממש מוזרים לי

אתה מאתחל מערך של של אובייקטים בדיוק כמו שאתה מאתחל מערך של int

אם כתבת constructor שמקבל פרמטר אחד ל-class בשם bla אתה עושה משהו כזה

bla var[10] = {1,2,3,4,5,6,7,8,9}

ככה שהאיבר הראשון יקרא ל-constructor עם 1 השני עם 2 וכו..

אם אתה עושה constructor שמקבל 2 פרמטרים (כמו בדוגמא שלך) אתה עושה משהו כזה

Student Shlomo[10] = {(14, 100),(14,1000),(2,50)....};

פורסם
  • מחבר

אוקיי נדמה לי שהבנתי. תודה רבה.

פורסם
search.gif של המילה rand או random בפורום ימצא לך תשובה.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים