Wie initialisiere ich das dynamische Array von Zeichen mit einem String-Literal in C ++?

Ich möchte Folgendes tun:

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

Offensichtlich funktioniert es nicht, weil ich die Größe eines neuen Arrays nicht angegeben habe. Was ist ein geeigneter Weg, um mein Ziel zu erreichen, ohne Symbole in einem String-Literal zu zählen?

Benutzung vonstd::array ist auch willkommen.

Update # 1: Auch wenn ich die Größe des Arrays angegeben habe, funktioniert es nicht.

Update # 2: Es ist wichtig, ein @ zu hab non-const Zugriff auf das Array als einfacheschar* Zeiger.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage