Как использовать boost :: function_types :: parameter_types с ClassTypeTransform - PullRequest
1 голос
/ 06 декабря 2009

Я играл с примером hpp, предоставленным в библиотеке наддува, и пытаюсь выяснить, как правильно использовать эту функцию parameter_types.

Из расширенного документа для parameter_types требуется ClassTypeTransform для анализа сигнатур функций-членов класса.

Я хочу проанализировать сигнатуры функций-членов, но не могу найти какой-либо документ о том, что должно делать это лямда-выражение.

ClassTransform MPL - лямбда-выражение для преобразования типа класса, если F является указатель на функцию-член

На самой странице я не могу найти ни одного примера кода, фактически использующего его, и я надеялся, что кто-то знает, как использовать его для анализа сигнатур функций-членов.

1 Ответ

2 голосов
/ 24 декабря 2009

ClassTransform просто используется для изменения первого типа аргумента в случае, если parameter_types<> применяется к типу указателя на функцию-член. По умолчанию add_reference<_>, например:

parameter_types<void(X::*)(int)>::type -> SomeSequence<void, X&, int>
parameter_types<void(X::*)(int), mpl::identity<_> >::type -> SomeSequence<void, X, int>
parameter_types<void(X::*)(int), add_pointer<_> >::type -> SomeSequence<void, X*, int>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...