public:
SimpleHash() {
- entries = new Entry[HashSize];
+ entries = new (std::nothrow) Entry[HashSize];
if (!entries)
{
std::cerr << "Failed to allocate " << HashSize * sizeof(Entry)
memset(entries, 0, HashSize * sizeof(Entry));
}
- ~SimpleHash() { delete [] entries; }
+ virtual ~SimpleHash() { delete [] entries; }
Entry* find(Key key) const { return entries + ((uint32_t)key & (HashSize - 1)); }