Comment puis-je générer UUID en c++, sans utiliser de bibliothèque boost?
Je veux générer UUID pour ma demande de distinguer chaque de l'installation de mon application. Je veux générer ce UUID à l'aide de C++ sans bibliothèque boost de soutien. Comment puis-je générer UUID l'aide d'une autre bibliothèque opensource?
Note: Ma plateforme windows
Qt.
Sur windows, vous pouvez utiliser
Sur windows, vous pouvez utiliser
UuidCreate
son rpc.h
. Par exemple: nogeekhere.blogspot.dans/2008/07/...OriginalL'auteur PURE | 2014-06-23
Vous devez vous connecter pour publier un commentaire.
Comme mentionné dans les commentaires, vous pouvez utiliser UuidCreate
cette bibliothèque est inclus avec l'installation de Visual Studio
Oh merci mon ami,
Vous êtes les bienvenus 🙂
Ou utiliser CoCreateGuid qui est un wrapper autour de UuidCreate.
OriginalL'auteur Yuval
La ossp-uuid bibliothèque peuvent générer des Uuid et a C++ liaisons.
Il semble extrêmement simple à utiliser:
Noter qu'il alloue et renvoie un style C de la chaîne, dont le code appelant doit libérer pour éviter une fuite.
Une autre possibilité est libuuid, qui fait partie du paquet util-linux, disponible à partir de ftp://ftp.kernel.org/pub/linux/utils/util-linux/. Toutes les versions de Linux de la machine sera déjà installé. Il n'a pas une API C++ mais il est encore appelée à partir de C++ à l'aide de l'API C.
bon sang, je n'avais même pas remarqué que! Merci, d'avoir mis à jour la réponse.
OriginalL'auteur harmic
Traditionnellement UUID sont simplement la machine de l'adresse MAC de concaténé avec le nombre d'intervalles de 100 nanosecondes depuis l'adoption du calendrier Grégorien dans l'Ouest. Il n'est donc pas trop difficile d'écrire en C++
class
qui fait cela pour vous.Il y a plusieurs versions et variantes de l'Uuid, votre réponse ne couvre que la Version 1.
Pourquoi ne pouvez-vous pas utiliser
rand()
ou de tout autre (pseudo-) aléatoire de fonction, si ce que vous essayez de faire de est un hasard UUID?ay, pour aller pseudo-aléatoire de fonction, je pense que je devrais aller à des fichiers de la bibliothèque de droit. c'est pourquoi je préfère directement l'UUID de la bibliothèque de fichiers.
Ce style de UUID (type 1) a été abandonnée en faveur de l'Uuid qui n'a pas de fuite de données personnelles identifiables.
OriginalL'auteur Paul Evans