EtrediaEmpires/utils/modules/allocator.cppm
2026-02-18 17:00:04 +03:00

24 lines
460 B
C++

export module utils:allocator;
import std;
export {
template<typename T, typename... Args> T* Allocate(Args&&... args)
{
return new T(std::forward<Args>(args)...);
}
template<typename T> void Deallocate(T* obj)
{
delete obj;
}
template<typename T> T* AllocateArray(std::size_t size)
{
return new T[size];
}
template<typename T> void DeallocateArray(T* obj)
{
delete[] obj;
}
}