Похоже, что в вашем коде unique_ptr<bool[]> sequence;
нет значения, на которое можно указать.
unique_ptr<bool[]> sequence{new bool[3]};
Вы можете попробовать с приведенным выше кодом. Также, как уже упоминалось, умный указатель - это класс, который оборачивает «необработанный» (или «голый») указатель C ++ для управления временем жизни объекта, на который указывает указатель.
С необработанными указателями программист должен явно уничтожить объект, когда он больше не нужен. Интеллектуальный указатель для сравнения определяет политику, когда объект уничтожается. Вам все еще нужно создать объект, но вам больше не нужно беспокоиться об его уничтожении.