Существует ли идиоматический способ C++ резервировать и повторно использовать идентификаторы, уникальность которых гарантирована? Мои требования:
Предполагая, что существует идентификатор, который в настоящее время не зарезервирован, reserve_id(void) возвращает мне этот идентификатор .
В непрерывной последовательности вызовов Reserve_id() ни один идентификатор не будет возвращен дважды
Существует функция recycle(id_type), которая возвращает идентификатор доступного пула.
У меня, например, есть видел Boost::Uuid, но а) я не вижу документации, подтверждающей гарантированную уникальность двух UUID, и б) на данный момент я ограничен более ранней версией Boost (1.40). Я мог бы настаивать на обновлении, если бы это идеально подходило для этой задачи.
Существует ли идиоматический способ C++ резервировать и повторно использовать идентификаторы, уникальность которых гарантирована? Мои требования:
[list] [*]Предполагая, что существует идентификатор, который в настоящее время не зарезервирован, [b]reserve_id(void)[/b] возвращает мне этот идентификатор . [*]В непрерывной последовательности вызовов Reserve_id() [b]ни один идентификатор не будет возвращен дважды[/b] [*]Существует функция [b]recycle(id_type)[/b], которая возвращает идентификатор доступного пула. [/list]
У меня, например, есть видел Boost::Uuid, но а) я не вижу документации, подтверждающей гарантированную уникальность двух UUID, и б) на данный момент я ограничен более ранней версией Boost (1.40). Я мог бы настаивать на обновлении, если бы это идеально подходило для этой задачи.
Я пытаюсь реализовать модульную мультипликативную обратную операцию, используя расширенный алгоритм Евклида на C++. В Python код для этого краткий и идиоматический, с использованием распаковки кортежей:
def inv_modulo(a: int, b: int) -> int:
_s, s...
Я пытаюсь реализовать модульную мультипликативную обратную операцию, используя расширенный алгоритм Евклида на C++. В Python код для этого краткий и идиоматический, с использованием распаковки кортежей:
def inv_modulo(a: int, b: int) -> int:
_s, s...
Я экспериментировал с C ++ STD :: уникальные функции, но результаты, которые он возвращает, действительно меня смущает. Я сделал простую функцию, чтобы проверить его, например,
#include
#include
#include