דף הבית שיעורים תוספות לא מונחות עצמים המרות
 
המרות
 
כעת נדבר על המרות (casting), כלומר שינוי עצם מטיפוס אחד לטיפוס אחר.
לדוגמא, לפניך קוד ב-C המעביר טיפוס int לטיפוס float, לפני ביצוע פעולת החלוקה, וזאת כדי שהמהדר יבצע חלוקת מספרים עשרוניים ולא טבעיים, ולא יאבד את הספרות שאחרי הנקודה בתוצאה.

int a;
int b;
float c;
c = (float)a/(float)b;
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט

ב-++C ניתן להשתמש באותו התחביר עבור המרות, אבל ניתן לעשות זאת גם בדרך הבאה:

int a;
int b;
float c;
c = float(a)/float(b);
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט

כאן, ההמרה נראית ממש כמו קריאה לפונקציה, רק שבמקום שם הפונקציה אתה רושם את הטיפוס אליו אתה רוצה להעביר את המשתנה.
ב-++C שתי צורות ההמרה חוקיות ושתיהן עושות אותו הדבר, אך בכל זאת קיים הבדל: בצורה השנייה של ההמרה ניתן להשתמש רק אם הטיפוס אליו מעבירים הוא שם פשוט.
לדוגמא, ההמרה ל- char * יכולה להתבצע רק בדרך הראשונה:

(char *)a;
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט

ולא בדרך השנייה:

char *(a);
העבר את העכבר על שורות הקוד בכדי לקבל הסבר מפורט