Сейчас я создаю вектор в файле заголовка. Разумеется, я не просто объявляю это.Объявлять и инициализировать вектор в заголовке (также, другие контейнеры STL)
std::vector<int> attacked_nodes = std::vector<int>();
Это прекрасно работает, но это вызывает у меня некоторые сомнения. Это не в контексте правильного класса, это просто переменная, используемая многими функциями.
Я хотел бы знать, если это
- правильно (это будет иметь неприятные последствия?)
- приемлемой практикой (это, вероятно, не хорошо)
Я искал вокруг , да.
УВЕДОМЛЕНИЕ: это, вероятно, плохая практика кодирования, я получаю ее. Что я хочу знать, если это действительно некорректно?
Я бы предпочел не использовать новое для создания указателя, возможно, я мог бы использовать новое и сохранить ссылку? Это still inelegant, но может работать.
Спасибо.
Совершенно неясно, что вы спрашиваете о самом деле. Каковы ваши особые сомнения? Точки, которые вы оставили, слишком расплывчаты. –
Определение свободной переменной в файле заголовка - ужасная идея. Зачем вам это нужно? –
@ πάνταῥεῖ Я инициализирую вектор в заголовке и сохраняю его как ссылку. Это приводит к неопределенному поведению или плохой практике кодирования? – Agostino