У меня есть класс, который иногда должен использовать элемент типа deque<int>
, если аргумент передается конструктору, а если нет, то этот элемент не будет использоваться. Каков наилучший способ справиться с этой ситуацией эффективно и стилистически?Пустой deque против неиспользуемого указателя на deque
Я хотел бы также упомянуть, что объекты этого класса должны быть переданы в одну и ту же функцию, хотя удаление возможности хранения в одном контейнере прекрасное. Я никогда не делал полиморфизма (как намекнул в комментариях), но я думаю, что собираюсь прочитать об этом и попробовать.
Мои две идеи:
- Держите переменную-член как deque<int>
, который будет храниться в виде пустой deque<int>
я полагаю.
- Используйте указатель на deque<int>
, позвонив по телефону new
, если это необходимо.
Если вы не делаете тонны этих вещей, держите вещи простыми. Не оптимизируйте, прежде чем у вас появятся требования. Убедиться, что код работает и его легко понять, это самое главное. Другими словами, просто сделайте это и не используйте, если вам это не нужно. – xaxxon
Я понимаю, что вы имеете в виду, но это простой класс, созданный потенциально десятками миллионов раз в других классах, которые я пишу. – user904963
Мне также нравится иметь красивый код :) – user904963