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

C++ में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग कैसे शुरू करें?


ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) एक प्रोग्रामिंग पैराडाइम है जो "ऑब्जेक्ट्स" की अवधारणा पर आधारित है, जिसमें डेटा एट्रिब्यूट्स के रूप में हो सकता है; और काम करने के निर्देश मेथड्स के रूप में हो सकते हैं।

उदाहरण के लिए, एक व्यक्ति एक ऑब्जेक्ट है जिसमें कुछ प्रॉपर्टीज होती हैं जैसे ऊंचाई, लिंग, उम्र, आदि। इसमें कुछ मेथड्स भी होते हैं जैसे चलना, बोलना, आदि।

ऑब्जेक्ट

यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की मूल इकाई है। यानी डेटा और डेटा पर ऑपरेट करने वाले फंक्शन दोनों को एक इकाई के रूप में बंडल किया जाता है जिसे ऑब्जेक्ट कहते हैं।

क्लास

जब आप एक क्लास परिभाषित करते हैं, तो आप एक ऑब्जेक्ट के लिए ब्लूप्रिंट परिभाषित करते हैं। यह वास्तव में कोई डेटा परिभाषित नहीं करता, लेकिन यह परिभाषित करता है कि क्लास नाम का क्या अर्थ है, यानी क्लास के ऑब्जेक्ट में क्या शामिल होगा और उस ऑब्जेक्ट पर कौन-से ऑपरेशन किए जा सकते हैं।

OOP के चार मूलभूत अवधारणाएं हैं जिन पर यह पूरी तरह आधारित है। आइए उन्हें व्यक्तिगत रूप से देखें –

  • एब्स्ट्रैक्शन (Abstraction) – एब्स्ट्रैक्शन का अर्थ है बाहरी दुनिया को केवल आवश्यक जानकारी प्रदान करना और उनके बैकग्राउंड विवरण छिपाना। उदाहरण के लिए, एक वेब सर्वर यह छिपाता है कि वह प्राप्त डेटा को कैसे प्रोसेस करता है, अंतिम उपयोगकर्ता बस एंडपॉइंट्स को हिट करता है और डेटा वापस प्राप्त करता है।
  • एनकैप्सुलेशन (Encapsulation) – एनकैप्सुलेशन डेटा मेंबर्स (वेरिएबल्स, प्रॉपर्टीज) और मेंबर फंक्शन्स (मेथड्स) को एक इकाई में बांधने की प्रक्रिया है। यह कुछ प्रॉपर्टीज तक पहुंच को प्रतिबंधित करने का एक तरीका भी है।
  • इनहेरिटेंस (Inheritance) – मौजूदा क्लास से एक नई क्लास बनाने की क्षमता को इनहेरिटेंस कहते हैं। इनहेरिटेंस का उपयोग करके, हम पैरेंट क्लास से एक चाइल्ड क्लास बना सकते हैं जो पैरेंट क्लास की प्रॉपर्टीज और मेथड्स को इनहेरिट करती है और अपनी स्वयं की अतिरिक्त प्रॉपर्टीज और मेथड्स रख सकती है। उदाहरण के लिए, यदि हमारे पास एक क्लास Vehicle है जिसमें Color, Price जैसी प्रॉपर्टीज हैं, तो हम इससे Bike और Car जैसी दो क्लास बना सकते हैं जिनमें वे दो प्रॉपर्टीज हों और उनके लिए विशेष अतिरिक्त प्रॉपर्टीज हों जैसे कार में numberOfWindows जबकि बाइक में नहीं। यही मेथड्स पर भी लागू होता है।
  • पॉलीमॉर्फिज्म (Polymorphism) – पॉलीमॉर्फिज्म शब्द का अर्थ है कई रूप होना। आमतौर पर, पॉलीमॉर्फिज्म तब होता है जब क्लासेस का एक हायरार्की होता है और वे इनहेरिटेंस द्वारा संबंधित होते हैं। C++ पॉलीमॉर्फिज्म का अर्थ है कि एक मेंबर फंक्शन को कॉल करने पर एक अलग फंक्शन एक्जीक्यूट होगा, यह इस पर निर्भर करता है कि फंक्शन को इनवोक करने वाले ऑब्जेक्ट का प्रकार क्या है। उदाहरण के लिए, यदि हमारे पास Shape नामक एक क्लास है और उसमें getArea नामक एक मेथड है, तो आकार के आधार पर, हम अलग-अलग तरीके से क्षेत्र की गणना करेंगे (सर्कल बनाम स्क्वायर)।

आप C++ ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग पर उत्कृष्ट ट्यूटोरियल tutorialspoint पर जाकर OOP सीखना शुरू कर सकते हैं।

  1. जावास्क्रिप्ट में कैसे जांचें कि कोई ऑब्जेक्ट क्लास का इंस्टेंस है? जावास्क्रिप्ट में कैसे जांचें कि कोई ऑब्जेक्ट क्लास का इंस्टेंस है?

    जावास्क्रिप्ट में जांचने का कोड कि कोई ऑब्जेक्ट क्लास का इंस्टेंस है या नहीं - उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style> &n

  1. - C++ में Python ऑब्जेक्ट का उपयोग कैसे करें?

    यहां एक उदाहरण है जिसमें एक साधारण Python ऑब्जेक्ट को रैप और एम्बेड किया गया है। हम इसके लिए .c का उपयोग कर रहे हैं, C++ के चरण समान हैं: class PyClass(object): def __init__(self): self.data = [] def add(self, val): self.data.append(val) def __str__(self): return

  1. - पायथन में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP)

    पायथन अपनी स्थापना के बाद से एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा रही है। क्लासेस और ऑब्जेक्ट्स OOP के दो मुख्य बिल्डिंग ब्लॉक्स हैं। क्लास परिभाषित करना # सबसे सरल क्लास class Vehicle: pass # खाली बॉडी # इंस्टेंस बनाना v = Vehicle() print(v) # मेथड्स और self पैरामीटर क्लास के अंदर मेथड्