एक नेस्टेड क्लास एक ऐसा वर्ग है जिसे किसी अन्य वर्ग में घोषित किया जाता है। नेस्टेड वर्ग भी संलग्न वर्ग का एक सदस्य चर है और अन्य सदस्यों के समान पहुंच अधिकार रखता है। हालांकि, संलग्न वर्ग के सदस्य कार्यों की नेस्टेड वर्ग के सदस्यों तक कोई विशेष पहुंच नहीं है।
एक प्रोग्राम जो C++ में नेस्टेड कक्षाओं को प्रदर्शित करता है वह इस प्रकार है।
उदाहरण
#include<iostream> using namespace std; class A { public: class B { private: int num; public: void getdata(int n) { num = n; } void putdata() { cout<<"The number is "<<num; } }; }; int main() { cout<<"Nested classes in C++"<< endl; A :: B obj; obj.getdata(9); obj.putdata(); return 0; }
आउटपुट
Nested classes in C++ The number is 9
उपरोक्त कार्यक्रम में, कक्षा बी को कक्षा ए के अंदर परिभाषित किया गया है, इसलिए यह एक नेस्टेड वर्ग है। कक्षा बी में एक निजी चर संख्या और दो सार्वजनिक कार्य getdata() और putdata() शामिल हैं। फ़ंक्शन getdata() डेटा लेता है और फ़ंक्शन putdata() डेटा प्रदर्शित करता है। यह इस प्रकार दिया गया है।
class A { public: class B { private: int num; public: void getdata(int n) { num = n; } void putdata() { cout<<"The number is "<<num; } }; };
फ़ंक्शन मुख्य () में, कक्षा ए और कक्षा बी की एक वस्तु को परिभाषित किया गया है। फिर फ़ंक्शन getdata () और putdata () को वेरिएबल obj का उपयोग करके कॉल किया जाता है। यह नीचे दिखाया गया है।
cout<<"Nested classes in C++"<< endl; A :: B obj; obj.getdata(9); obj.putdata();