Public Types | |
typedef std::map< unsigned char, const Function< dim > * > | type |
It seems odd at first to declare this typedef inside a class, rather than declaring a typedef at global scope. The reason is that C++ does not allow to define templated typedefs, where here in fact we want a typdef that depends on the space dimension.
typedef std::map<unsigned char, const Function<dim>*> FunctionMap< dim >::type |
Declare the type as discussed above. Since we can't name it FunctionMap (as that would ambiguate a possible constructor of this class), name it in the fashion of the STL local typedefs.