Из главы 7 вы узнали о применении оператора [] для индексации объектов, как если бы они были массивами. В этой главе мы рассмотрим две тесно связанные функции С# для создания интерфейсов структур и классов, упрощающих их понимание и применение: перегрузку операторов (operator overloading) и нестандартные, определенные пользователем преобразования. Я начну с общего обзора перегрузки операторов, чтобы были ясны ее преимущества, затем рассмотрю конкретный синтаксис переопределения поведения операторов по умолчанию, а также реальный пример приложения, в котором оператор + перегружается для объединения нескольких объектов Invoice. Потом вы увидите листинг с перегружаемыми бинарными и унарными операторами и применением некоторых ограничений. Обсуждение перегрузки операторов завершится рекомендациями по принятию решения о перегрузке операторов в ваших классах. Закончив с перегрузкой операторов, вы изучите новую концепцию — нестандартные преобразования. Я опять же начну с основ этой возможности, а затем углублюсь в описание класса, показав, как применять преобразования для структур и классов к другим структурам и классам или базисным типам С#.
0
480 просмотров
Понравилась статья? Поделиться с друзьями:
Вам также может быть интересно
Идея Microsoft .NET в том, чтобы переместить центр внимания вычислительного сообщества из мира, состоящего
Что же представляет собой .NET Framework и что он дает? Вначале мы сравним .NET
Фраза, которой я охарактеризовал .NET: «новая среда для создания и запуска надежных, масштабируемых, распределенных
Common Language Runtime (CLR) — это сердце технологии Microsoft .NET. Как следует из названия,
Библиотеки классов .NET Framework играют чрезвычайно важную роль в обеспечении межъязыкового взаимодействия приложений, так
Для облегчения перевода языков в среду .NET в Microsoft разработан промежуточный язык — Microsoft