Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

HashKey

 

Calculates a hash value for the given key.


      template<class ARG_KEY>
AFX_INLINE UINT AFXAPI HashKey(
   ARG_KEY key 
);

ARG_KEY

Template parameter specifying the data type used to access map keys.

key

The key whose hash value is to be calculated.

The key's hash value.

This function is called directly by CMap::RemoveKey and indirectly by CMap::Lookup and CMap::Operator [].

The default implementation creates a hash value by shifting key right by four positions. Override this function so that it returns hash values appropriate for your application.

Example

template <> UINT AFXAPI HashKey(unsigned __int64 key)
{
   // Generate the hash value by XORing the lower 32 bits of the number 
   // with the upper 32 bits
   return(UINT(key) ^ UINT(key >> 32));
}

Requirements

Header: afxtempl.h

Show: