Covellite++  Version: 2.3.0 Revision: ??? Platform: x64 Build: 23:13 04.01.2025
Кроссплатформенный фреймворк для разработки приложений на С++
Загрузка...
Поиск...
Не найдено
Id.impl.hpp
1
2#pragma once
3#include <queue>
4#include <Covellite/Expanse/Defines.hpp>
5
6namespace covellite
7{
8
9namespace expanse
10{
11
33class Id final
34{
35public:
36 ObjectId_t GetFreeId(void) noexcept;
37 void AddRemovedObjectId(const ObjectId_t & _Id);
38
39private:
40 ObjectId_t m_NextId = 0;
41 ::std::queue<ObjectId_t> m_FreeIds;
42
43public:
44 Id(void) = default;
45 Id(const Id &) = delete;
46 Id(Id &&) = delete;
47 Id & operator= (const Id &) = delete;
48 Id & operator= (Id &&) = delete;
49 ~Id(void);
50};
51
52} // namespace expanse
53
54} // namespace covellite
Класс входит в проект Covellite.Expanse Класс идентификатора объекта.
Definition Id.impl.hpp:34
void AddRemovedObjectId(const ObjectId_t &_Id)
Функция возврата идентификатора удаленного объекта.
Definition Id.cpp:27