Estoy buscando convertir un boost :: uuid a un const char *. ¿Cuál es la sintaxis correcta para la conversión?Convertir boost :: uuid to char *
25
A
Respuesta
36
Usted puede hacer esto un poco más fácil el uso de impulso :: lexical_cast que utiliza un std :: stringstream bajo el capó.
#include <boost/lexical_cast.hpp>
#include <boost/uuid/uuid_io.hpp>
const std::string tmp = boost::lexical_cast<std::string>(theUuid);
const char * value = tmp.c_str();
10
Puede incluir <boost/uuid/uuid_io.hpp>
y luego usar los operadores para convertir un uuid en std::stringstream
. A partir de ahí, es una conversión estándar a const char*
según sea necesario.
Para obtener más información, consulte the Input and Output second of the Uuid documentation.
std::stringstream ss;
ss << theUuid;
const std::string tmp = ss.str();
const char * value = tmp.c_str();
(Para más detalles sobre por qué necesita la cadena "tmp", see here.)
1
utiliza las funciones de flujo de impulso/UUID/uuid_io.hpp.
boost::uuids::uuid u;
std::stringstream ss;
ss << u;
ss >> u;
26
Por si acaso, también hay boost::uuids::to_string
, que funciona de la siguiente manera:
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_io.hpp>
boost::uuids::uuid a = ...;
const std::string tmp = boost::uuids::to_string(a);
const char* value = tmp.c_str();
Cuestiones relacionadas
- 1. Double to Const Char *
- 2. cómo serializar boost :: uuids :: uuid
- 3. libxml2 xmlChar * cast to char *
- 4. Cómo convertir 'const boost :: filesystem2 :: path' en 'const char *'?
- 5. Char to Hex en javascript
- 6. Boost C++ serializar un char *
- 7. Port Boost to Android
- 8. C Convertir char en char *
- 9. Convertir char a NSString
- 10. String to Char array Java
- 11. C++ convertir char a const char *
- 12. Convertir char [] para LPCWSTR
- 13. Convertir float a char *
- 14. Convertir Zval en char *
- 15. Convertir cadena a char
- 16. Convertir byte [] en char []
- 17. CMake linking to boost. error LNK2005
- 18. Ejemplo de generación de UUID con Boost en C++
- 19. Cast boost :: shared_array <char> para impulsar :: shared_array <const char>
- 20. const unsigned char * to std :: string
- 21. ¿Por qué recibo advertencias de valor no inicializadas de Valgrind cuando uso el UUID de Boost?
- 22. Convertir un char a mayúscula
- 23. Convertir single-char a int
- 24. JnI convertir jstring en char *
- 25. ¿Quieres convertir CharCode a Char?
- 26. Cómo convertir char * a BSTR?
- 27. Necesita convertir String^en char *
- 28. Convertir CString en const char *
- 29. referencia indefinida para `boost :: log_mt_posix :: basic_attribute_set <char> :: ~ basic_attribute_set() '
- 30. Cómo convertir char * a un sistema :: string^
Para las personas que trabajan con versiones antiguas de impulso: Este método se introduce en 1,44. Consulte http://www.boost.org/doc/libs/1_43_0/boost/uuid/uuid_io.hpp http://www.boost.org/doc/libs/1_44_0/boost/uuid/uuid_io.hpp – user1556435
This debería ser la respuesta correcta, en mi humilde opinión. –