Структура COR_PRF_FUNCTION_ARGUMENT_INFO
Представляет аргументы функции слева направо.
typedef struct _COR_PRF_FUNCTION_ARGUMENT_INFO {
ULONG numRanges;
ULONG totalArgumentSize;
COR_PRF_FUNCTION_ARGUMENT_RANGE ranges[1];
} COR_PRF_FUNCTION_ARGUMENT_INFO;
Члены
Элемент |
Описание |
---|---|
numRanges |
Число блоков аргументов. Иными словами это значение соответствует количеству структур COR_PRF_FUNCTION_ARGUMENT_RANGE в массиве ranges. |
totalArgumentSize |
Общий размер всех аргументов. Иными словами, это значение является суммой длин аргументов. |
ranges |
Массив структур COR_PRF_FUNCTION_ARGUMENT_RANGE, каждая из которых представляет один блок аргументов функции. |
Заметки
У функции может быть несколько аргументов. Эти аргументы не обязательно постоянно хранятся в памяти. Поэтому можно поместить блок из трех аргументов в одном месте, блок из двух аргументов — в другом, а еще один блок из одного аргумента — в третьем. Все эти аргументы принадлежат одной и той же функции, и только хранятся в разных местах.
Структура COR_PRF_FUNCTION_ARGUMENT_INFO представляет все аргументы одной функции. Она использует массив для ссылки на все блоки ее аргументов. Поэтому для одной функции используется одна структура COR_PRF_FUNCTION_ARGUMENT_INFO, которая ссылается на несколько структур COR_PRF_FUNCTION_ARGUMENT_RANGE, каждая из которых указывает на один или несколько аргументов функции.
Аргументы, хранящиеся в регистрах, распределяются в памяти для построения структур.
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: CorProf.idl
Библиотека: CorGuids.lib
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0