14 Jul
2008
14 Jul
'08
5:40 p.m.
AMDG Maximilian Matthe wrote:
Hi!
I'm developing with preprocessor a class generator, that generates the wrapper classes needed by boost.python when you want to derive in python from polymorph c++-base classes.
I would need a Macro that expands to "return" if its argument is not void. I tried the following, but that obiously does not work:
#define Return(type) \ BOOST_PP_EXPR_IF(BOOST_PP_NOT_EQUAL(type, void), return)
I made a workaround by adding an integer value to my Array that defines the methods signature. But that is redundant.
Is there a way to achieve the behaviour above?
It's possible (See BOOST_MPL_PP_TOKEN_EQUAL) but it's probably easier to use void returns: void f(); void g() { return f(); } In Christ, Steven Watanabe