std::string getMyString() { return <make a string>; }
...
HANDLE something = OpenSomething(getMyString().c_str(), ...);
He leído Guaranteed lifetime of temporary in C++ y creo que la cadena temporal seguirá viva hasta que se haya evaluado la tarea, es decir, el tiempo suficiente para que funcione como se esperaba.¿Es este un uso adecuado de una std :: string temporal?
Habiendo una vez antes de correr en un error de tiempo de vida relacionada std::string
-(no puedo recordar lo que era) prefiero vuelva a comprobar ...
Sí, buen punto - aunque no lo hace. –