Covellite++  Version: 2.3.0 Revision: 2580 Platform: x64 Build: 15:23 16.10.2020
Кроссплатформенный фреймворк для разработки приложений на С++
Id.impl.hpp
1 
2 #pragma once
3 #include <queue>
4 #include <Covellite/Expanse/Defines.hpp>
5 
6 namespace covellite
7 {
8 
9 namespace expanse
10 {
11 
33 class Id final
34 {
35 public:
36  ObjectId_t GetFreeId(void) noexcept;
37  void AddRemovedObjectId(const ObjectId_t & _Id);
38 
39 private:
40  ObjectId_t m_NextId = 0;
41  ::std::queue<ObjectId_t> m_FreeIds;
42 
43 public:
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::Id::AddRemovedObjectId
void AddRemovedObjectId(const ObjectId_t &_Id)
Функция возврата идентификатора удаленного объекта.
Definition: Id.cpp:27
covellite::expanse::Id
Класс входит в проект Covellite.Expanse Класс идентификатора объекта.
Definition: Id.impl.hpp:34