This part of the code is called an initializer list. See
Constructors and member initializer lists - cppreference.com[
^] for in-depth explanations.
P.S.:
A short explanation: the ':' indicates the start of an initializer list. Before the ':' is a call to a constructor, after the ':' comes a comma-separated list of member variables and the values that are used to initialize them.
For example in this case, we can see that the class CEnumContext has a member variable called m_SearchContainer, which is initialized with the value NULL.