template class hashtable publicexplicit hashtableint size )bool containsconst hashedobj constvoid makeempty)bool insertconst hashedobj )bool inserthashedobj & )bool removeconst hashedobj )enum entrytype activeemptydeleted }privatestruct hashentry hashedobj elemententrytype infohashentryconst hashedobj hashedobj}entrytype empty elemente }infoi hashentryhashedobj &eentrytype empty elementstd::movee }infoi }vector arrayint currentsizebool isactiveint currentpos constint findposconst hashedobj constvoid rehash)size_t myhashconst hashedobj const}figure class interface for hash tables using probing strategiesincluding the nested hashentry class in figure elements that are marked as deleted count as being in the table this can cause problemsbecause the table can get too full prematurely we shall discuss this item presently lines to represent the fast way of doing quadratic resolution from the definition of the quadratic resolution functionf(if( so the next cell to try is distance from the previous cell tried and this distance increases by on successive probes