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

यूनरी ऑपरेटरों को ओवरलोड करना + C++ में


ऑपरेटर कीवर्ड एक फ़ंक्शन घोषित करता है जो निर्दिष्ट करता है कि ऑपरेटर-प्रतीक का अर्थ क्या है जो एक बार कक्षा के उदाहरणों पर लागू होता है। यह ऑपरेटर को एक से अधिक अर्थ देता है, या इसे "अधिभार" देता है। कंपाइलर एक ऑपरेटर के विभिन्न अर्थों के बीच उसके ऑपरेंड के प्रकारों की जांच करके अंतर करता है।

यूनरी ऑपरेटर एक ही ऑपरेंड पर काम करते हैं और यूनरी ऑपरेटरों के उदाहरण निम्नलिखित हैं -

  • इन्क्रीमेंट (++) और डिक्रीमेंट (--) ऑपरेटर्स।
  • यूनरी माइनस (-) ऑपरेटर।
  • तार्किक नहीं (!) ऑपरेटर।

यूनरी ऑपरेटर उस ऑब्जेक्ट पर काम करते हैं जिसके लिए उन्हें बुलाया गया था और सामान्य रूप से, यह ऑपरेटर ऑब्जेक्ट के बाईं ओर दिखाई देता है, जैसे +obj, !obj, -obj, और ++obj लेकिन कभी-कभी उनका उपयोग पोस्टफिक्स के साथ-साथ obj++ या obj-- की तरह किया जा सकता है।

निम्न उदाहरण समझाएं कि कैसे प्लस(+) ऑपरेटर को उपसर्ग उपयोग के लिए ओवरलोड किया जा सकता है -

उदाहरण

#include <iostream>
using namespace std;

class Distance {
   private:
   int feet;             // 0 to infinite
   int inches;           // 0 to 12

   public:
   // Constructor
   Distance(int f, int i) {
      feet = f;
      inches = i;
   }

   // method to display distance
   void display() {
      cout << "F: " << feet << " I:" << inches <<endl;
   }

   // overloaded plus(+) operator
   Distance operator+() {
      if(inches == 11) {
         inches = 0;
         feet = feet + 1;
      } else {
         inches = inches + 1;
      }
      return Distance(feet, inches);
   }
};

int main() {
   Distance D1(3, 4), D2(1, 11);

   +D1;
   D1.display();

   +D2;
   D2.display();

   return 0;
}

आउटपुट

यह आउटपुट देगा -

F: 3 I:5
F: 2 I:0

  1. C++ . में यूनरी ऑपरेटर

    यूनरी ऑपरेटर वह ऑपरेटर होता है जो एक नया मान उत्पन्न करने के लिए एकल ऑपरेंड पर कार्य करता है। यूनरी ऑपरेटर इस प्रकार हैं: ऑपरेटर्स विवरण Indirection ऑपरेटर (*) यह एक पॉइंटर वेरिएबल पर काम करता है और पॉइंटर एड्रेस पर मान के बराबर एक एल-वैल्यू देता है। इसे पॉइंटर को डेरेफ्रेंसिंग कहा जाता है।

  1. C++ में बिटवाइज़ ऑपरेटर्स

    c++ में 3 बिटवाइज़ ऑपरेटर उपलब्ध हैं। ये बिटवाइज़ AND(&), बिटवाइज़ OR(|) और बिटवाइज़ XOR(^) हैं। बिटवाइज AND ऑपरेटर (&) पहले ऑपरेंड के प्रत्येक बिट की तुलना दूसरे ऑपरेंड के संगत बिट से करता है। यदि दोनों बिट्स 1 हैं, तो संबंधित परिणाम बिट को 1 पर सेट किया जाता है। अन्यथा, संबंधित परिणाम बिट 0 पर सेट

  1. C++ . में रिलेशनल ऑपरेटर्स

    C++ प्रोग्रामिंग में, दो वेरिएबल्स में स्टोर किए गए मानों की तुलना निम्नलिखित ऑपरेटरों का उपयोग करके की जा सकती है और उनके बीच संबंध निर्धारित किया जा सकता है। इन ऑपरेटरों को रिलेशनल ऑपरेटर कहा जाता है। उपलब्ध विभिन्न C++ संबंधपरक ऑपरेटर हैं - संचालक विवरण इससे बड़ा = इससे बड़ा या इसके