Внутреннее представление пользовательских подпрограмм преобразования
Внутреннее представление пользовательских подпрограмм преобразования
Как и в случае перегруженных операций, те методы, которые обозначены ключевыми словами implicit или explicit, получают "специальные имена" в терминах CIL: op_Implicit и op_Explicit соответственно (рис. 9.2).

Рис. 9.2. Представление пользовательских подпрограмм преобразования в терминах CIL.
На этом мы завершаем обзор возможностей пользовательских подпрограмм преобразования. Как и в случае перегруженных операций, соответствующий синтаксис является лишь сокращённым вариантом определения "нормальных" членов-функций, и с этой точки зрения он не является обязательным.
Исходный код. Проект CustomConversions размещен в подкаталоге, соответствующем главе 9.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Внутреннее представление переменной jiffies
Внутреннее представление переменной jiffies Переменная jiffies исторически всегда представлялась с помощью типа unsigned long и, следовательно, имеет длину 32 бит для 32-разрядных аппаратных платформ и 64 бит для 64-разрядных. В случае 32-разрядного значения переменной jiffies и частоты
ГЛАВА 4. ВНУТРЕННЕЕ ПРЕДСТАВЛЕНИЕ ФАЙЛОВ
ГЛАВА 4. ВНУТРЕННЕЕ ПРЕДСТАВЛЕНИЕ ФАЙЛОВ Как уже было замечено в главе 2, каждый файл в системе UNIX имеет уникальный индекс. Индекс содержит информацию, необходимую любому процессу для того, чтобы обратиться к файлу, например, права собственности на файл, права доступа к
1. Параметры подпрограмм
1. Параметры подпрограмм В описании процедуры или функции задается список формальных параметров. Каждый параметр, описанный в списке формальных параметров, является локальным по отношению к описываемой процедуре или функции, и в модуле, связанном с данной процедурой
Урок № 61. Внутреннее перемещение ТМЦ
Урок № 61. Внутреннее перемещение ТМЦ Одной из распространенных операций складского учета является операция по внутреннему перемещению товарно-материальных ценностей внутри предприятия. В этом случае перемещаемые ценности не покидают пределы предприятия, а лишь
Inner Glow (Внутреннее свечение)
Inner Glow (Внутреннее свечение) Эффект Inner Glow (Внутреннее свечение), аналогично эффекту внутренней тени, позволяет задать свечение элемента по внутреннему его контуру. Во всем остальном его действие совпадает с действием эффекта Outer Glow (Внешнее свечение) (рис. 8.13). Рис. 8.13.
Внутреннее представление свойств в C#
Внутреннее представление свойств в C# Многие программисты (особенно те, которые привыкли использовать C++) стремятся использовать традиционные префиксы get_ и set_ для методов чтения и модификации (например, get_FullName() и set_FullName()). Против самого соглашения возражений нет. Однако
Внутреннее представление индексаторов типов
Внутреннее представление индексаторов типов Мы рассмотрели примеры метода индексатора в C#, и пришло время выяснить, как представляются индексаторы в терминах CIL. Если открыть числовой индексатор типа Garage, то будет видно, что компилятор C# создает свойство Item, которое
Внутреннее представление перегруженных операций
Внутреннее представление перегруженных операций Подобно любому элементу программы C#, перегруженные операции представляются специальными элементами синтаксиса CIL. Откройте, например, компоновочный блок OverloadedOps.exe с помощью ildasm.exe. Как показано на рис. 9.1, перегруженные
Создание пользовательских подпрограмм преобразования
Создание пользовательских подпрограмм преобразования В C# есть два ключевых слова, explicit и implicit, предназначенные для управления тем, как типы должны отвечать на попытки преобразования. Предположим, что у нас есть следующие определения структур.public struct Rectangle { // Открыты для
Определение подпрограмм неявного преобразования
Определение подпрограмм неявного преобразования До этого момента мы с вами создавали пользовательские операции явного преобразования. Но что можно сказать о следующем неявном преобразовании?static void Main(string[] args) { … // Попытка выполнить неявное преобразование? Square
Внутреннее устройство Pocket PC
Внутреннее устройство Pocket PC Если не брать в расчет сам факт миниатюрности и отсутствие некоторых привычных на настольном ПК устройств, таких как клавиатура и мышь, то можно считать, что Pocket PC является полноценным компьютером. Мало того, по своим параметрам он является
Внутреннее соединение
Внутреннее соединение Следующий оператор соединяет две таблицы, которые связаны через внешний ключ FK правой таблицы (Table2) и первичный ключ PK таблицы Table1:SELECTТаblе1.PK,Table1.COL1,Table2.PKX,Table2.COLXFROM Table1 INNER JOIN Table2ON Table1.PK = Table2.FKWHERE... условия-поискаЭто спецификация внутреннего
Внутреннее устройство технологии
Внутреннее устройство технологии Когда любой запрос вызывает хранимую процедуру, то текущее определение этой хранимой процедуры копируется в этот момент в кэш метаданных. В Классическом сервере эта копия присутствует в течение всего времени пользовательского
ОПЫТЫ: Внутреннее расследование
ОПЫТЫ: Внутреннее расследование Автор: Сергей ЛеоновСегодня мы займемся варварским делом — разборкой одной из современных цифровых фотокамер. Не слишком часто удается разобрать до винтика подобную технику, но раз уж такая возможность представилась, почему бы не
9. Параметры подпрограмм
9. Параметры подпрограмм В описании процедуры или функции задается список формальных параметров. Каждый параметр, описанный в списке формальных параметров, является локальным по отношению к описываемой процедуре или функции, и в модуле, связанным с данной процедурой
10. Типы параметров подпрограмм
10. Типы параметров подпрограмм Параметры-значенияФормальный параметр-значение обрабатывается как локальная переменная, он получает свое начальное значение из соответствующего фактического параметра при активизации процедуры или функции. Изменения, которые