Function Objects

Function Objects

שאלה מעניינת ב-C++: נתון CLASS ששמו X. הוא מוגדר כך (שימו לב לאופרטור). היפכו את כיוון הטקסט של ההודעה כדי לראות את הקוד בבירור. class x { int operator()(const char* blahblah); }; כעת קוראים לו כך מה-MAIN: int main(...) { x my_x; x("yadayada") } לי זה נראה כמו פתרון זול ל-COMMAND PATTERN - שזה נחמד. אבל לא הצלחתי למצוא הגדרה פורמלית של האופרטור (). מישהו מכיר כזו?
 

חובבן

New member
זהו פנקטור, או בלעז Functor

כלי שימושי ביותר. אתה יכול לחפש דוגמאות ב STL
 
מ-STL

אני מכיר דוגמאות. שם פגשתי את זה מלכתחילה. אבל לא מצאתי תיעוד. תודה.
 

חובבן

New member
זהו אופרטור לכל דבר וענין

אין שוני בינו לכל אופראטור אחר. יש תעוד בכל ספר C++ בפרק של operator overloading. בספר של סקוט מאייר Effective STL יש פרק שלם על הפנקטורים (ספר מומלץ).
 

אלדד26

New member
הערה...

כדי שהקוד יהיה יותר ברור, יש "תחילת קוד" ו - "סיום קוד" מתחת לחלון ההודעה, כשאתה כותב אותה. זה מכניס הנחיות DIV-ים ב - HTML.
 
למעלה