При создании ячейки вы передаете идентификатор для этого конкретного типа ячейки, так что позже вы можете попытаться получить предварительно выделенную ячейку, и вам нужно будет только создать ее заново, если не осталось свободной ячейки (делается автоматически для вы - просто попробуйте получить его с идентификатором, как в примере кода).
Вы можете использовать столько разных идентификаторов, сколько захотите. Хорошая практика - использовать разные идентификаторы для каждого типа ячейки (которые в любом случае, вероятно, принадлежат разным подклассам UITableViewCell).
Так что, если у вас есть CellTypeA и CellTypeB (оба наследуются от UITableViewCell или настроены совершенно по-разному), используйте разные ключи для обоих типов.