Mbingarkimi i operatorëve

Në programimin kompjuterik, mbingarkimi i operatorit, ndonjëherë e quajtur polimorfizëm ad hoc i operatorit, është një rast specifik i polimorfizmit, ku operatorë të ndryshëm kanë zbatime të ndryshme në varësi të argumenteve të tyre. Mbingarkimi i operatorit në përgjithësi përcaktohet nga një gjuhë programimi, një programues ose të dyja.

 Arsyetimi 
Mbingarkimi i operatorit është sheqer sintaksor dhe përdoret sepse lejon programimin duke përdorur shënime më afër fushës së synuar  dhe lejon tipet e përcaktuara nga përdoruesi një nivel të ngjashëm mbështetjeje sintaksore si llojet e ndërtuara në një gjuhë. Është e zakonshme, për shembull, në llogaritjen shkencore, ku lejon që paraqitjet llogaritëse të objekteve matematikore të manipulohen me të njëjtën sintaksë si në letër.

 Shembuj 
Në këtë rast, operatori i mbledhjes mbingarkohet për të lejuar shtimin në një tip të përcaktuar nga përdoruesi  në C++ :Time operator+(const Time& lhs, const Time& rhs) {
 Time temp = lhs;
 temp.seconds += rhs.seconds;
 temp.minutes += temp.seconds / 60;
 temp.seconds %= 60;
 temp.minutes += rhs.minutes;
 temp.hours += temp.minutes / 60;
 temp.minutes %= 60;
 temp.hours += rhs.hours;
 return temp;
}Mbledhja është një operacion binar, që do të thotë se ka dy operande. Në C++, argumentet që kalohen janë operandët, dhe objekti  është vlera e kthyer.

Operatori "më i vogël" (<) shpesh mbingarkohet për të renditur një strukturë ose klasë:class Pair {
 public:
  bool operator<(const Pair& p) const {
    if (x_ == p.x_) {
      return y_ < p.y_;
    }
    return x_ < p.x_;
  }

 private:
  int x_;
  int y_;
};

Kategoria:Operatorë (programim)
Kategoria:Programim kompjuterik