ABA


"|C++| צריך עזרה, לא מבין מה הבעיה בתוכנית - RationalNumber"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #20344 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 20344
_Poseidon_ 
חבר מתאריך 1.9.02
976 הודעות
   21:19   14.11.13   
אל הפורום  
  |C++| צריך עזרה, לא מבין מה הבעיה בתוכנית - RationalNumber  
 
בגדול, מימוש אופרטורים על מספרים רציונליים.
אני לא מצליח להבין מה הבעיה, חיפשתי בגוגל את סוג השגיאה ולא מצאתי פתרון

cpp
https://rotter.name/User_files/nor/528521ed347524cb.txt
hader
https://rotter.name/User_files/nor/5285220734e5d8bb.txt

אלו השגיאות

תודה רבה


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  מכתב Dj EreZ 14.11.13 22:04 1
     תודה, אבל כמו שאמרתי, חיפשתי בגוגל והבעיה שלי לא נפתרה _Poseidon_  16.11.13 11:01 2
  פונקציה שמעמיסה אופרטורים צריכה להיות ככה: inno3D 16.11.13 14:29 3
     ממש לא נכון בנוגע לאופרטור+ IDAN_500  16.11.13 15:07 4
         זה לאו דווקא קשור לאופרטור+ עידן NoBuddy 19.11.13 05:16 6
             זה בדיוק מה שהתכוונתי אבל :P IDAN_500  19.11.13 10:54 7
  טוב אז ככה, כנס IDAN_500  16.11.13 20:09 5

       
Dj EreZ
חבר מתאריך 17.3.10
409 הודעות
   22:04   14.11.13   
אל הפורום  
  1. מכתב  
בתגובה להודעה מספר 0
 
   3 תוצאות ראשונות בגוגל:

http://stackoverflow.com/questions/4175971/error-c2228-left-of-size-must-have-class-struct-union

http://stackoverflow.com/questions/15713966/left-of-must-have-class-struct-union

http://www.cplusplus.com/forum/general/52604/


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
_Poseidon_ 
חבר מתאריך 1.9.02
976 הודעות
   11:01   16.11.13   
אל הפורום  
  2. תודה, אבל כמו שאמרתי, חיפשתי בגוגל והבעיה שלי לא נפתרה  
בתגובה להודעה מספר 1
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
inno3D
חבר מתאריך 21.4.02
4533 הודעות
   14:29   16.11.13   
אל הפורום  
  3. פונקציה שמעמיסה אופרטורים צריכה להיות ככה:  
בתגובה להודעה מספר 0
 
   RationalNumber& RationalNumber::operator+( const RationalNumber& A)

עם רפרנס


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IDAN_500 
חבר מתאריך 11.12.03
2321 הודעות
   15:07   16.11.13   
אל הפורום  
  4. ממש לא נכון בנוגע לאופרטור+  
בתגובה להודעה מספר 3
 
   אופרטור +, בסה"כ מחזיר by value עצם שמכיל את התוצאה, וברור שאנחנו לא רוצה להחזיר reference לאובייקט שהוקצה בתוך הפונקציה.
(אני מדבר פה על ה return type בלבד)


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
NoBuddy
חבר מתאריך 2.7.02
14473 הודעות
   05:16   19.11.13   
אל הפורום  
  6. זה לאו דווקא קשור לאופרטור+ עידן  
בתגובה להודעה מספר 4
 
   בכללי אתה לא רוצה לשלוח BY REFERENCE אובייקט או משתנה מקומי שייהרס כשה SCOPE של הפונקציה יסתיים (כי אז אתה שולח רפרנס לאובייקט שבעצם לא קיים)

סתם מחדד אותך


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IDAN_500 
חבר מתאריך 11.12.03
2321 הודעות
   10:54   19.11.13   
אל הפורום  
  7. זה בדיוק מה שהתכוונתי אבל :P  
בתגובה להודעה מספר 6
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IDAN_500 
חבר מתאריך 11.12.03
2321 הודעות
   20:09   16.11.13   
אל הפורום  
  5. טוב אז ככה, כנס  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 16.11.13 בשעה 20:18 בברכה, IDAN_500
 
דבר ראשון, לפי ההצהרה שלך הפונקציה של אופרטור ההדפסה אמורה להחזיר ערך ולא מחזירה כלום במימוש (עזוב את זה שבכלל כדאי לך לממש אותה כ friend שמקבלת ref ל ostream וכמובן מחזירה ref ל ostream)
בעיקרון זה הדבר היחידי שלא עבר אצלי קומפילציה...

בכלל, בכל האופרטורים תגדיר את ה member functions כ const (כי האובייקט לא משתנה), ותשתדל לקבל את הפרמטרים by const ref (כי גם אותם אתה לא משנה)

ובמקרה אני גם ב HIT ואני יודע שהיא דורשת שהמחלקה תדע לחשב גם int & rational, rational & int

בהצלחה...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net