Кућа Развој Шта је преоптерећење оператера? - дефиниција из техопедије

Шта је преоптерећење оператера? - дефиниција из техопедије

Преглед садржаја:

Anonim

Дефиниција - Шта значи преоптерећење оператора?

Преоптерећење оператора је техника којом се оператори који се користе у програмском језику имплементирају у кориснички дефинисаним типовима са прилагођеном логиком која се заснива на врстама аргумената који се прослеђују.


Преоптерећење оператора олакшава спецификацију корисничке дефиниције за операције у којима су један или оба операнда дефинирани од стране класе или врсте структуре. Ово помаже типовима дефинираним од стране корисника да се понашају попут основних примитивних типова података. Преоптерећење оператора је корисно у случајевима када оператори који се користе за одређене типове дају семантику везану за контекст домене и синтактичку подршку као што је пронађено у програмском језику. Користи се за синтактичку практичност, читљивост и одрживост.


Јава не подржава преоптерећење оператора, изузев конкатације низа за коју интерно оптерећује + оператора.

Тецхопедиа објашњава преоптерећење оператора

Оператори се позивају на употребу оператора у изразима и функционалне нотације у декларацијама. Синтакса, приоритет и асоцијативност оператера не могу се променити употребом декларација корисника дефинисаних од стране корисника.


На пример, оператори у Ц # категорису се на основу врсте операције коју изводе. Неки од њих су преоптерећени у кориснички дефинираним типовима дефинирањем у функцијама статичких чланова и кориштењем кључне ријечи оператера. Параметри функције оператора представљају операнде, док тип повратка функције оператора представља резултат операције. Преоптерећење се спроводи у паровима за операторе, попут оператора за поређење попут "==" и "! =". Метода Екуалс () за ове операторе треба пребрисати да се избегне упозорење компајлера. Преоптерећење се не користи за оператере као што су условно, логичко (и !!), додељивање (+ =, - = итд.), Кастинг и индексирање низова ().


Веома се препоручује да се преоптерећење оператора спроведе тако да се добијени резултати интуитивно очекују од задане имплементације оператера. Одређена математичка правила, попут комутативног закона, примењива на изразе са два операнда, не могу се применити када се користе у преоптерећењу за типове, јер су дефинисани само за нумеричке операнде.

Шта је преоптерећење оператера? - дефиниција из техопедије