עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

אתחול משתנה במחלקה ב-CPP

Featured Replies

פורסם

שלום.

לצערי שכחתי את הכללים של C++ ויש לי בעיה קטנה.

נניח שקיים הקוד הבא:


class List
{
   int data;
   List *next;

   List(d) : data(d), next(NULL) {}
}

כלומר מחלקה בשם List בעלת קונסטרקטור שמקבל פרמטר אחד.

כעת אני בונה מחלקה חדשה:


class A
{
   List MyList;
   ...
}

ואני רוצה לאתחל את MyList בקונסטרקטור של A, עם הפרמטר 1 (כלומר MyList יהיה אובייקט שיאותחל עם הקונסטרקטור של List עם פרמטר 1).

איך אני כותב את הקונסטרקטור של A במקרה הזה?

תודה מראש, מקווה שהובנתי.

פורסם

אני יודע C אבל נראה לי שזה כמו סטראקט אז אם זה באותה יחידת ספרייה אתה עושה פשוט

MyList.data=הפרמטר ששלחת

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

פורסם

RTPC

אין קוסטרקטורים בC, אלא רק בC++... ולא זה לא אותו דבר...

צביקה:

ניסית אולי להפעיל בinitline את הקוסטרקטור של list?

פורסם
  • מחבר

זהו, בהתחלה לא הייתי בטוח איך בדיוק לעשות את זה. לסוף הסתבר לי שפשוט רושמים את הקונסטרקטור של A ככה:

A() : MyList(1) {}

זה הכל. זה מה שהייתי צריך בעצם.

תודה בכל אופן.

פורסם

List(d){} : data(d), next(NULL)

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.