কম্পিউটার টিউটোরিয়াল

C++-এ ইউনারি অপারেটর ওভারলোডিং (Overloading a Unary Operator) কী?


ইউনারি অপারেটর (Unary operators) একটি একক অপারেন্ড ওপর কাজ করে এবং ইউনারি অপারেটরএর উদাহরণগুলো হলো:

  • ইনক্রিমেন্ট (++) এবং ডিক্রিমেন্ট (--) অপারেটর।
  • ইউনারি মাইনাস (-) অপারেটর।
  • লজিক্যাল NOT (!) অপারেটর।

ইউনারি অপারেটরগুলো সে অবজেক্টের ওপর কাজ করে जिसके জন্য সেগুলো কল করা হয় এবং সাধারণত এই অপারেটর অবজেক্টের বামপাশে দেখা যায়, যেমন !obj, -obj, এবং ++obj কিন্তু কখনো কখনো এগুলো পোস্টফিক্স হিসাবেও ব্যবহার করা যায় যেমন obj++ বা obj--।

নিচের উদাহরণটি দেখায় কীভাবে ব্যাং (!) অপারেটর প্রিফিক্স ইউজের জন্য ওভারলোড করা যায়:

উদাহরণ

#include <iostream>
using namespace std;
class Distance {
    private:
        int feet;   // 0 to infinite
        int inches; // 0 to 12
    public:
        // কনস্ট্রাক্টর
        Distance(int f, int i) {
            feet = f;
            inches = i;
        }
        // ডিস্ট্যান্স ডিসপ্লে মেথড
        void display() {
            cout << "F: " << feet << " I:" << inches << endl;
        }
        // ওভারলোডেড ব্যাং (!) অপারেটর
        Distance operator!() {
            feet = -feet;
            inches = -inches;
            return Distance(feet, inches);
        }
};
int main() {
    Distance D1(3, 4), D2(-1, 10);
    !D1;
    D1.display(); // D1 ডিসপ্লে
    !D2;          // 네가শন প্রয়োগ
    D2.display(); // D2 ডিসপ্লে
    return 0;
}

আউটপুট

F: -3 I:-4
F: 1 I:-10

  1. C++-এ ডট অপারেটর (.) কী?

  2. C++-এ কমা অপারেটর (Comma Operator)

  3. C++-এ sizeof অপারেটর কী?

  4. C++-এ ইউনারি অপারেটর (Unary Operators)