Satura rādītājs:
Definīcija - ko nozīmē operatora pārslodze?
Operatora pārslodze ir paņēmiens, ar kuru operatori, kas tiek izmantoti programmēšanas valodā, tiek ieviesti lietotāja definētos tipos ar pielāgotu loģiku, kuras pamatā ir nodoto argumentu veidi.
Operatora pārslodze atvieglo lietotāja definētu ieviešanu operācijām, kurās vienam vai abiem operandiem ir lietotāja noteikts klases vai struktūras tips. Tas palīdz lietotāja definētiem tipiem rīkoties līdzīgi primitīvo datu tipiem. Operatora pārslodze ir noderīga gadījumos, kad noteikta veida operatori nodrošina semantiku, kas saistīta ar domēna kontekstu, un sintaktisko atbalstu, kā atrodams programmēšanas valodā. To izmanto sintaktiskai ērtībai, lasāmībai un uzturēšanai.
Java neatbalsta operatora pārslodzi, izņemot virkņu apvienošanu, kurai tā pārslogo + operatoru iekšēji.
Techopedia izskaidro operatora pārslodzi
Uz operatoriem atsaucas, izmantojot operatoru apzīmējumus izteiksmēs un funkcionālos apzīmējumus deklarācijās. Operatora sintakse, prioritāte un asociativitāte nevar tikt mainīta, izmantojot lietotāja definētas operatora deklarācijas.
Piemēram, C # operatori tiek iedalīti kategorijās, pamatojoties uz viņu veiktās operācijas veidu. Daži no tiem ir pārslogoti lietotāja definētos tipos, definējot tos statiskās locekļa funkcijās un izmantojot operatora atslēgu. Operatora funkcijas parametri attēlo operandus, savukārt operatora funkcijas atgriešanās tips atspoguļo operācijas rezultātu. Pārslodze tiek ieviesta pāros operatoriem, piemēram, salīdzināšanas operatoriem, piemēram, "==" un "! =". Lai izvairītos no kompilatora brīdināšanas, šo operatoru metode Equals () ir jāpārskata. Pārslodze nav jāizmanto tādiem operatoriem kā nosacīts, loģisks (un !!), piešķiršana (+ =, - = utt.), Liešana un masīva indeksēšana ().
Ļoti ieteicams operatoru pārslodzi īstenot tā, lai iegūtie rezultāti būtu tādi, kādi intuitīvi tiek gaidīti no operatora noklusējuma ieviešanas. Atsevišķus matemātiskos noteikumus, piemēram, komutācijas likumu, kas piemērojami izteiksmēm ar diviem operandiem, nevar piemērot, ja tos izmanto tipu pārslodzē, jo tie ir noteikti tikai skaitliskajiem operandiem.
