Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ . में समग्र डिजाइन पैटर्न

समग्र पैटर्न का उपयोग किया जाता है जहां हमें वस्तुओं के समूह को एक ही वस्तु के समान व्यवहार करने की आवश्यकता होती है। समग्र पैटर्न भाग के साथ-साथ संपूर्ण पदानुक्रम का प्रतिनिधित्व करने के लिए एक वृक्ष संरचना की अवधि में वस्तुओं की रचना करता है। इस प्रकार का डिज़ाइन पैटर्न संरचनात्मक पैटर्न के अंतर्गत आता है क्योंकि यह पैटर्न वस्तुओं के समूह की एक वृक्ष संरचना बनाता है।

यह पैटर्न एक वर्ग बनाता है जिसमें अपनी वस्तुओं का समूह होता है। यह वर्ग समान वस्तुओं के अपने समूह को संशोधित करने के तरीके प्रदान करता है।

हम निम्नलिखित उदाहरण के माध्यम से समग्र पैटर्न के उपयोग का प्रदर्शन कर रहे हैं जिसमें हम किसी संगठन के कर्मचारियों के पदानुक्रम को दिखाएंगे।

C++ . में समग्र डिजाइन पैटर्न

यहां हम देख सकते हैं कि कंपोजिट और लीफ दोनों वर्ग घटक को लागू कर रहे हैं। महत्वपूर्ण हिस्सा समग्र वर्ग है, इसमें रचना संबंध द्वारा दिखाए गए घटक ऑब्जेक्ट भी शामिल हैं।

उदाहरण कोड

#include <iostream>
#include <vector>
using namespace std;
class PageObject {
   public:
      virtual void addItem(PageObject a) { }
      virtual void removeItem() { }
      virtual void deleteItem(PageObject a) { }
};
class Page : public PageObject {
   public:
      void addItem(PageObject a) {
      cout << "Item added into the page" << endl;
   }
   void removeItem() {
      cout << "Item Removed from page" << endl;
   }
   void deleteItem(PageObject a) {
      cout << "Item Deleted from Page" << endl;
   }
};
class Copy : public PageObject {
   vector<PageObject> copyPages;
   public:
      void AddElement(PageObject a) {
         copyPages.push_back(a);
      }
      void addItem(PageObject a) {
         cout << "Item added to the copy" << endl;
      }
      void removeItem() {
         cout << "Item removed from the copy" << endl;
      }
      void deleteItem(PageObject a) {
         cout << "Item deleted from the copy";
      }
};
int main() {
   Page p1;
   Page p2;
   Copy myCopy;
   myCopy.AddElement(p1);
   myCopy.AddElement(p2);
   myCopy.addItem(p1);
   p1.addItem(p2);
   myCopy.removeItem();
   p2.removeItem();
}

आउटपुट

Item added to the copy
Item added into the page
Item removed from the copy
Item Removed from page

  1. C++ में एक आयत पैटर्न प्रिंट करने का कार्यक्रम

    इस ट्यूटोरियल में, हम किसी दिए गए आयताकार पैटर्न को प्रिंट करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें आयत की ऊंचाई और श्वास के साथ दिया जाएगा। हमारा कार्य @ वर्ण का उपयोग करके दिए गए आयामों के साथ आयत को प्रिंट करना है। उदाहरण #include<iostream> using namespace std; void print_re

  1. C++ में संख्याओं के पैटर्न को प्रिंट करने का कार्यक्रम

    इस ट्यूटोरियल में, हम दिए गए नंबरों के पैटर्न को प्रिंट करने के प्रोग्राम पर चर्चा करेंगे। हमारा काम कोड में लूपिंग स्ट्रक्चर का उपयोग करना और दिए गए पैटर्न को प्रिंट करना है - 1 232 34543 4567654 567898765 उदाहरण #include<bits/stdc++.h> using namespace std; int main(){   &n

  1. C++ सिंगलटन डिजाइन पैटर्न को समझाइए।

    सिंगलटन डिजाइन पैटर्न एक सॉफ्टवेयर डिजाइन सिद्धांत है जिसका उपयोग किसी वर्ग की तात्कालिकता को एक वस्तु तक सीमित करने के लिए किया जाता है। यह तब उपयोगी होता है जब पूरे सिस्टम में क्रियाओं के समन्वय के लिए एक वस्तु की आवश्यकता होती है। उदाहरण के लिए, यदि आप एक लकड़हारे का उपयोग कर रहे हैं, जो किसी फ़ा