The dictionary get<word> for retrieval with input checking
The lookup into the HashTable uses cfind() instead of find() to
ensure that the const_iterator version will always be used.
The type is auto, since the compiler can correctly deduce the
iterator type and we can only make things worse (more typing, wrong
information) if we add this ourselves.
Check for the iterator validity using found() or good() methods.
Internally these are identical to comparing with an end iterator,
but we save typing and potential mismatches by using these dedicated
Exit immediately upon error, leaving the good case to drop through.
Use of the FatalErrorInLookup or FatalIOErrorInLookup macros which
wrap standard boilerplate text for the output.
Anti-pattern: The equivalent longhand version (pre-v1912)
illustrates the type of repetitive text we avoid: