ולמעט העובדה שזמן הקומפילציה יהיה ארוך בהרבה וזמן
הריצה יהיה ארוך בקצת. ואם בטעות תשלב קלט פלט משני הסוגים
יהיה בלאגן. אז לא יקרה אסון גדול.בC יש דברים שבשביל לכתוב סביר, חייבים להשתמש בvoid *
וכן לפעמים חייבים להשתמש בcast ואילו אם אני אנסה לקחת
את השעטנז שכתבת, ולשלב אותו אם קוד קיים, בC או בC++ צפוי
להיות שמח.
כשאתה אומר העמסת אופרטורים, אני מניח שאתה מדבר רק על
overloading לפונקציות, שיקבלו פרמטרים שונים.
שכן אם אתה מתחיל לבנות classes ולהגדיר עליהם כל מיני אופרטורים
אז שוב אתה נכנס לבלאגן גדול של C++ ואתה מתחיל לערבב שני
פארדיגמות.
בשביל לכתוב קוד נקי ומסודר, כדאי לכתוב בפארדיגמה מסוימת,
אם כותבים OOP אז כותבים OOP, ואם כותבים פונקציונלי אז כותבים
פונקציונלי ומצמצמים למינימום חריגות מהפארדיגמה.
אפשר לכתוב C++ פרוצדוראלי לחלוטין, אני פשוט לא חושב
שאתה מרוויח יותר מידי מזה שאתה כותב C++, למעשה אם תפתח
את הספר של strostroup בהתחלה תמצא סקירה של פארדיגמות שונות
לתכנות, שכן C++ בנויה לעבוד עם כל פארדיגמה. אבל
הכי השקיעו בגישה של OOP, ניסו בוני השפה שלא תשלם עבור אופציות
שאתה לא משתמש עמם, אבל ההצלחה שלהם הייתה רק חלקית.
אני בימינו בכלל כותב כמעט רק C ולא C++, אפילו כשאני כותב OO
וגם זה עובד(ומאוד מהר) הkernel של לינוקס כתוב רק בC ולא בC++
בכלל משיקולי מהירות, ואילו יש שם קטעים OO במובהק, כולל הורשה
וכל מיני דברים יפים כאלו.
