tempSymbolTable->hashtable.find(lexeme)
вернет tempSymbolTable->hashtable.end()
в случае неудачи, поэтому вы можете преобразовать этот результат в логическое значение очень просто:
return tempSymbolTable->hashtable.find(lexeme) != tempSymbolTable->hashtable.end();
Кроме того, присваивать это временной переменной и работать с ней не нужно. Ваша функция может быть уменьшена до:
bool NS_SymbolTable::SymbolTable::Contains(std::string lexeme)
{
return hashtable.find(lexeme) != hashtable.end();
}