ahmed.o.mohamed

اختبر قدراتك في C/CPP - الحلقة الرابعة, الجزء العاشر

4 ردود في هذا الموضوع

السلام عليكم

الحلقة الأولى.

الحلقة الثانية - الجزء الأول.

الحلقة الثانية - الجزء الثاني.

الحلقة الثانية - الجزء الثالث.

الحلقة الثانية - الجزء الرابع.

الحلقة الثانية - الجزء الخامس.

الحلقة الثانية - الجزء السادس و الأخير.

الحلقة الثالثة - الجزء الأول.

الحلقة الثالثة - الجزء الثاني.

الحلقة الثالثة - الجزء الثالث.

الحلقة الثالثة - الجزء الرابع.

الحلقة الثالثة - الجزء الخامس و الأخير.

الحلقة الرابعة - الجزء الأول.

الحلقة الرابعة - الجزء الثاني.

الحلقة الرابعة - الجزء الثالث.

الحلقة الرابعة - الجزء الرابع.

الحلقة الرابعة - الجزء الخامس.

الحلقة الرابعة - الجزء السادس.

الحلقة الرابعة - الجزء السابع.

الحلقة الرابعة - الجزء الثامن.

الحلقة الرابعة - الجزء التاسع.

مرحبا بكم إخوتي الكرام في الجزء العاشر من الحلقة الرابعة من سلسلة اختبر قدراتك, قمتُ بتقسيم الحلقة الرابعة إلى عدة أجزاء, مُرتبة حسب الصعوبة.

أجزاء هذه الحلقة ستكون خاصة بمسائل الــ OOP.

الإختبار الرابع (الجزء العاشر) :

ما هي مُخرجات الكود التالي : (يُمنع استخدام الــ Compiler)

#include <iostream>
using namespace std;

class A {
int na;
public:

A(int nn = 1) {
na = nn;
cout << "$$construction objet A " << na << endl;
}
};

class B : public A {
float xb;
public:

B(float xx = 0.0) {
xb = xx;
cout << "$$construction objet B " << xb << endl;
}
};

class C : public A {
int nc;
public:

C(int nn = 2) : A(2 * nn + 1) {
nc = nn;
cout << "$$construction objet C " << nc << endl;
}
};

class D : public B, public C {
int nd;
public:

D(int n1, int n2, float x) : C(n1), B(x) {
nd = n2;
cout << "$$construction objet D " << nd << endl;
}
};

int main() {
D d(10, 20, 5.0);
return 0;
}

علل إجابتك !

سأضع حل السؤال بعد إنتهاء عرض المحاولات.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

متاهة بناء أم ماذا؟ محاولة/

$$construction objet A  5
$$construction objet B 5
$$construction objet A 21
$$construction objet C 10
$$construction objet D 20

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

محاولة جيدة أخي ياسين, فقط أخطأت في نتيجة A :)

المُخرجات الصحيحة هي :

$$construction objet A 1

$$construction objet B 5

$$construction objet A 21

$$construction objet C 10

$$construction objet D 20

بناء كائن من D يعني استدعاء دالة بناء الفئة B و C أيضاً, هاتين الأخيرتين يستدعيان دالة بناء الفئة A قبل تنفيذهما.

في حالة B سيتم استدعاء دالة البناء بدون وسائط أما في حالة C سيتم استدعاء دالة البناء بوسيط واحد.

في كل الحالات سيتم إنشاء كائنين من نوع A.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

تم منح النقاط للمشاركات المفيدة.

يُغلق.

أراكم في الجزء الحادي عشر من الحلقة الرابعة.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .