Содержание
- Определение - что означает перегрузка оператора?
- Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.
- Techopedia объясняет перегрузку оператора
Определение - что означает перегрузка оператора?
Перегрузка операторов - это метод, с помощью которого операторы, используемые в языке программирования, реализуются в пользовательских типах с настраиваемой логикой, основанной на передаваемых типах аргументов.
Перегрузка оператора облегчает спецификацию пользовательской реализации для операций, в которых один или оба операнда имеют определенный пользователем класс или тип структуры. Это помогает пользовательским типам вести себя так же, как фундаментальные примитивные типы данных. Перегрузка операторов полезна в тех случаях, когда операторы, используемые для определенных типов, предоставляют семантику, связанную с доменом con, и синтаксическую поддержку, которые можно найти в языке программирования. Он используется для синтаксического удобства, удобочитаемости и удобства обслуживания.
Java не поддерживает перегрузку операторов, за исключением конкатенации строк, для которой она перегружает оператор + внутри.
Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.
Techopedia объясняет перегрузку оператора
На операторы ссылаются, используя обозначения операторов в выражениях и функциональные обозначения в объявлениях. Синтаксис, приоритет и ассоциативность оператора не могут быть изменены с помощью пользовательских определений операторов.
Например, операторы в C # классифицируются в зависимости от типа выполняемой ими операции. Некоторые из них перегружаются пользовательскими типами, определяя их в статических функциях-членах и используя ключевое слово operator. Параметры операторной функции представляют операнды, а возвращаемый тип операторской функции представляет результат операции. Перегрузка реализована попарно для операторов, таких как операторы сравнения, такие как "==" и "! =". Метод Equals () для этих операторов должен быть переопределен, чтобы избежать предупреждения компилятора. Перегрузка не должна использоваться для таких операторов, как условные, логические (и !!), присваивания (+ =, - = и т. Д.), Приведения и индексации массива ().
Настоятельно рекомендуется, чтобы перегрузка оператора была реализована так, чтобы полученные результаты были интуитивно ожидаемыми от реализации оператора по умолчанию. Некоторые математические правила, такие как коммутативный закон, применимые к выражениям с двумя операндами, не могут применяться при перегрузке типов, поскольку они определены только для числовых операндов.