Я использую рефлексию, чтобы проверить следующее объявление метода, и мне интересно, можно ли определить, что единственным параметром метода является указатель на функцию.
public ref class T
{
public:
void foo(Int32 (*)(String^, array<TimeSpan>^)) { }
};
При проверке объекта ParameterInfo
для параметра foo
он показывает, что тип параметра равен IntPtr
; это имеет смысл, поскольку указатель на функцию не является собственным типом CLR.
Поскольку указатель на функцию содержит только управляемые типы параметров, я надеялся получить дополнительный контекст в ParameterInfo
. Я не вижу никаких свойств или атрибутов в ParameterInfo
и Type
, которые могли бы помочь мне отличить этот экземпляр IntPtr
как указатель на функцию - есть ли какие-нибудь?