## NAME

ACE_Hashable

## SYNOPSIS

    #include <ace/Strategies.h>

    class ACE_Hashable
    {
      public:
        virtual ~ACE_Hashable (void);
        virtual u_long hash (void) const;
      protected:
        ACE_Hashable (void);
        virtual u_long hash_i (void) const = 0;
        u_long hash_value_;
    };

## PUBLIC MEMBERS

    virtual ~ACE_Hashable (void);

Destructor.

    virtual u_long hash (void) const;

Computes and returns hash value. This "caches" the hash value to improve performance.

## PROTECTED MEMBERS

    ACE_Hashable (void);

Protected constructor.

    virtual u_long hash_i (void) const = 0;

This is the method that actually performs the non-cached hash computation.

    u_long hash_value_;

Pre-computed hash-value.

## AUTHOR

Doug Schmidt

## LIBRARY

ace