i found this in this file: http://www.boost.org/doc/libs/1_43_0/boost/spirit/home/phoenix/core/actor.hpp
What does this syntax means?
struct actor ... {
...
template <typename T0, typename T1>
typename result<actor(T0&,T1&)>::type // this line
I know what typename and templates are, my question is about actor(T0&,T1&) syntax
thank you
So this means that there is a template called
resultand within result is a type calledtype.So that line is using that type from the template.
Because the compiler does not know what
result<actor(T0&,T1&)>::typeis, you need to usetypenameto tell the compiler to treat it as a type.Update
actor(T0&,T1&)is a function taking aT0&and aT1&and returning anactorby value.