Use unique_ptr for ZoneLoading

This commit is contained in:
Jan
2021-03-14 12:34:50 +01:00
parent 94230cefb0
commit 301f6e3e7a
14 changed files with 118 additions and 153 deletions

View File

@ -3,16 +3,7 @@
ZoneMemory::ZoneMemory()
= default;
ZoneMemory::~ZoneMemory()
void ZoneMemory::AddBlock(std::unique_ptr<XBlock> block)
{
for (auto block : m_blocks)
{
delete block;
}
m_blocks.clear();
}
void ZoneMemory::AddBlock(XBlock* block)
{
m_blocks.push_back(block);
m_blocks.emplace_back(std::move(block));
}

View File

@ -1,16 +1,17 @@
#pragma once
#include <memory>
#include <vector>
#include "Utils/MemoryManager.h"
#include "Zone/XBlock.h"
#include <vector>
class ZoneMemory : public MemoryManager
{
std::vector<XBlock*> m_blocks;
std::vector<std::unique_ptr<XBlock>> m_blocks;
public:
ZoneMemory();
~ZoneMemory() override;
void AddBlock(XBlock* block);
void AddBlock(std::unique_ptr<XBlock> block);
};