יש לי שאלה מהסרטים

eyal the one

New member
יש לי שאלה מהסרטים

נניח יש לי הרבה char * שמופנים ל strings שונים ואני יוצר מצביע עם new ל char **. מן מערך של מצביעים ל סטרינגים. עכשיו, אני מאתחל את המערך הכפול ב char * השונים שהיו לי מן ההתחלה. בכל מקום במערך של char** שם char* אחר. האם כשאני אעשה delete ל char**. אני אעיף מן הזיכרון את כל ה סטרינגים שנמצאים ב char *. כלומר האם אני אמחוק את כל מה שה char * הראשונים מצביעים אליהם? בתודה אייל
 

tami120

New member
אתה צריך למחוק כל מחרוזת שהקצאת

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

tami120

New member
אתה צריך למחוק כל מחרוזת שהקצאת

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