ABA


"C++: מערך לאחסון פוינטרים לconst int."
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #15761 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 15761
the crusher
חבר מתאריך 1.8.02
18936 הודעות
   16:05   12.03.10   
אל הפורום  
  C++: מערך לאחסון פוינטרים לconst int.  
 
   ובכן, יצרתי את המערך באופן הבא:
const int **A=new const int*;
int* x=new int(4);
A=x;

כפי שאפשר לראות, ניתן להכניס אל המערך פוינטר למספר שלם שאינו קבוע. מה שאומר שאם אני מכניס את x אל תוך המערך, אני יכול לשנות את הערך שתא במערך מצביע אליו בלי שימוש במערך כלל.
הייתי רוצה להימנע מזה, משמע שתהא לי שגיאה קומפילציה ברגע שאני מכניס את x למערך.
מה עושים?


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  אה לא קראתי טוב... לא משנה פאביו ג'וניור 12.03.10 16:41 1
  אני לא ממש בא מתחביר של C++ אבל ronen333  12.03.10 17:04 2
  בוא נפריד קודם כל למקרים Net_Boy  12.03.10 17:50 3
     לא מדוייק mega-killer 12.03.10 20:02 4
         בדיוק. ldan192  12.03.10 21:08 5
         אכן התבלבלתי קצת בכוכביות של הפוינטרים אבל העיקר הרעיון Net_Boy  12.03.10 22:17 6

       
פאביו ג'וניור

   16:41   12.03.10   
אל הפורום  
  1. אה לא קראתי טוב... לא משנה  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   17:04   12.03.10   
אל הפורום  
  2. אני לא ממש בא מתחביר של C++ אבל  
בתגובה להודעה מספר 0
 
   לפי C הרעיון הוא המיקום שבו אתה רושם את הCONST.
תחפש על זה בגוגל אני בטוח שתמצא


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   17:50   12.03.10   
אל הפורום  
  3. בוא נפריד קודם כל למקרים  
בתגובה להודעה מספר 0
 
   const int *ptr - אי אפשר לשנות את ערך המצביע
int const *ptr - אי אפשר לשנות את הערך שבתוך המצביע
const int const *ptr - אי אפשר לשנות את ערך המצביע וגם את הערך שבתוך המצביע.

לכן אם אתה לא רוצה שישנו את תוכן המצביע תבחר באופציה השנייה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
mega-killer
חבר מתאריך 1.8.02
859 הודעות
   20:02   12.03.10   
אל הפורום  
  4. לא מדוייק  
בתגובה להודעה מספר 3
 
   const מתייחס למה שמשמאלו, ז"א:

int const * ptr - אי אפשר לשנות את הערך שאליו מצביע המצביע
int * const ptr - אי אפשר לשנות את המצביע עצמו

הסינטקס תומך גם את המקרה הבא, בו ה-const מתייחס למה למימינו
const int * ptr - אי אפשר לשנות את הערך שאליו מצביע המצביע



                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ldan192 
חבר מתאריך 14.9.08
95119 הודעות
   21:08   12.03.10   
אל הפורום  
  5. בדיוק.  
בתגובה להודעה מספר 4
 


בברכה,
עידן


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   22:17   12.03.10   
אל הפורום  
  6. אכן התבלבלתי קצת בכוכביות של הפוינטרים אבל העיקר הרעיון  
בתגובה להודעה מספר 4
 
  


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

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

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



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