C++/זיכרון דינמי: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Space3000 (שיחה | תרומות)
ינון א (שיחה | תרומות)
מ תיקון ++‎C
שורה 2:
;הקצאת זיכרון דינמית: היא פעולה של הקצאת זיכרון בעת הרצת התוכנה. פעולה זו מבוצעת בדרך כלל כאשר גודל הזיכרון הנדרש אינו ידוע מראש לפני הרצת התוכנה ויתברר רק לאחר קבלת קלט מהמשתמש, קריאת תוכן של קובץ כלשהו וכדומה.
 
== כלים להקצאת זיכרון דינאמית ב-C++‎C ==
מאחר ובשפת C++‎C יש תמיכה מלאה בכל הספריות הסטנדרטיות של C,
נתן להשתמש בפונקציות של C כגון malloc ו-free, אך הדבר אינו מומלץ,
כיוון שב-C++‎C יש כלים מתקדמים יותר.
ב-C++‎C מקצים זיכרון באופן דינמי באמצעות אופרטור new.
ישנה צורה בשפת C++‎C המאפשרת הקצאה דינמית של משתנה בודד וכן מערך.
=== משתנה בודד ===
*תקציר:
שורה 70:
 
== שינוי גודל הזיכרון ==
בשפת C פעולה זו התבצעה על ידי פונקציית realloc. ב-C++‎C אין אופרטור מיוחד לצורך זה. מה שנתן לעשות זה ליצור מקום חדש בזיכרון על ידי new, להעתיק את התוכן הישן למקום החדש ולאחר מכן לשחרר את הזיכרון הישן שהוקצה בעזרת delete.
*דוגמא:
<div style="text-align:left; direction:ltr;"><pre>