Question

1.
2.
3.
4.
Answer (Detailed Solution Below)

Option 3 : 1

Advertisement

Detailed Solution

सही उत्तर 1 है।

Key Points
Helpful?
PrepSnapprepsnap.in • Part -A

Question:

In C++, with class B : virtual public A { ... }; class C : virtual public A { ... }; class D : public B, public C { ... }; how many distinct subobjects of class A exist inside an object of class D? / C++ में, class B : virtual public A { ... }; class C : virtual public A { ... }; class D : public B, public C { ... }; के साथ, class D के ऑब्जेक्ट के अंदर class A के कितने भिन्न सबऑब्जेक्ट मौजूद हैं?

1.
2
2.
0
3.
1
4.
compilation fails due to ambiguity / अस्पष्टता के कारण कंपाइलेशन विफल

Correct Answer: 1

Virtual inheritance guarantees exactly one shared subobject of the virtual base A, no matter how many inheritance paths reach it — this is precisely what virtual inheritance was designed to solve in the diamond problem. / वर्चुअल इनहेरिटेंस वर्चुअल बेस A का ठीक एक साझा सबऑब्जेक्ट सुनिश्चित करता है, चाहे उस तक कितने ही इनहेरिटेंस पथ पहुँचें — डायमंड समस्या में इसी हेतु वर्चुअल इनहेरिटेंस बनाया गया था।

Downloaded from PrepSnap (prepsnap.in)