English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Gli operatori binari richiedono due parametri, ecco un esempio di operatore binario. Gli operatori binari che utilizziamo di solito, come l'operatore di somma (+), l'operatore di sottrazione (-), l'operatore di moltiplicazione (*) e l'operatore di divisione (/), appartengono agli operatori binari. Come l'operatore di somma (+).
Il seguente esempio dimostra come sovraccaricare l'operatore di somma (+). Allo stesso modo, puoi provare a sovraccaricare l'operatore di sottrazione (-) e l'operatore di divisione (/).
#include <iostream> using namespace std; class Box { double lunghezza; // lunghezza double breadth; // Larghezza double height; // Altezza public: double getVolume(void) { return length * breadth * height; } void setLength( double len ) { length = len; } void setBreadth( double bre ) { breadth = bre; } void setHeight( double hei ) { height = hei; } // Sostituisci l'operatore +, utilizzato per sommare due oggetti Box Box operator+(const Box& b) { Box box; box.length = this->length + b.length; box.breadth = this->breadth + b.breadth; box.height = this->height + b.height; return box; } }; // Funzione principale del programma int main( ) { Box Box1; // Dichiarare Box1, tipo Box Box Box2; // Dichiarare Box2, tipo Box Box Box3; // Dichiarare Box3, tipo Box double volume = 0.0; // Memorizzare il volume in questa variabile // Dettagli di Box1 Box1.setLength(6.0); Box1.setBreadth(7.0); Box1.setHeight(5.0); // Dettagli di Box2 Box2.setLength(12.0); Box2.setBreadth(13.0); Box2.setHeight(10.0); // Volume di Box1 volume = Box1.getVolume(); cout << "Volume di Box1: " << volume << endl; // Volume di Box2 volume = Box2.getVolume(); cout << "Volume di Box2: " << volume << endl; // 把两个对象相加,得到 Box3 Box3 = Box1 + Box2; // Box3 的体积 volume = Box3.getVolume(); cout << "Box3 的体积 : " << volume << endl; return 0; }
当上面的代码被编译和执行时,它会产生下列结果:
Box1 的体积 : 210 Box2 的体积 : 1560 Box3 的体积 : 5400