es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cuál es la manera correcta de utilizar fmt::sprintf?

Estoy tratando de optimizar mi software y para hacerlo necesito cambiar la forma en la que almaceno y dibujo cosas.

Muchas personas dicen que fmt es mucho más rápido que iostream haciendo esas cosas, pero aquí estoy tratando de entender qué hice mal.

El código antiguo funciona:

auto type = actor->GetName();
char name[0x64];
if (type.find("AI") != std::string::npos)
sprintf(name, "AI [%dm]", dist);

El nuevo no lo es:

auto type = actor->GetName();
char name[0x64];
if (type.find("AI") != std::string::npos)
fmt::sprintf("AI [%dm]", dist);

¿Qué estoy haciendo mal?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que no estás asignando la salida de fmt::sprintf a la variable name. Necesitas asignar la salida de fmt::sprintf a la variable name de esta manera:
    c++
    auto type = actor->GetName();
    char name[0x64];
    if (type.find("AI") != std::string::npos)
    name = fmt::sprintf("AI [%dm]", dist);

Comments are closed.