Как инициализировать динамический массив символов с помощью строкового литерала в C ++?

Я хочу сделать следующее:

std::unique_ptr<char[]> buffer = new char[ /* ... */ ] { "/tmp/file-XXXXXX" };

Очевидно, что это не работает, потому что я не указал размер нового массива. Как правильно достичь своей цели, не считая символы в строковом литерале?

Использованиеstd::array&nbsp;также приветствуется.

Обновление № 1:&nbsp;даже если я укажу размер массива, он тоже не будет работать.

Обновление № 2:&nbsp;жизненно важно иметьнеконстантная&nbsp;доступ к массиву как простойchar*&nbsp;указатель.