Procházet zdrojové kódy

storage: more about uses-allocator construction

Michele Caini před 4 roky
rodič
revize
ff0983cc42
1 změnil soubory, kde provedl 2 přidání a 2 odebrání
  1. 2 2
      src/entt/entity/storage.hpp

+ 2 - 2
src/entt/entity/storage.hpp

@@ -274,7 +274,7 @@ class basic_storage: public basic_sparse_set<Entity, typename std::allocator_tra
 
         ENTT_TRY {
             auto elem = assure_at_least(static_cast<size_type>(it.index()));
-            alloc_traits::construct(packed.second(), to_address(elem), std::forward<Args>(args)...);
+            entt::uninitialized_construct_using_allocator(to_address(elem), packed.second(), std::forward<Args>(args)...);
         }
         ENTT_CATCH {
             if constexpr(comp_traits::in_place_delete) {
@@ -323,7 +323,7 @@ private:
 
     void move_element(const std::size_t from, const std::size_t to) final {
         auto &elem = element_at(from);
-        alloc_traits::construct(packed.second(), to_address(assure_at_least(to)), std::move(elem));
+        entt::uninitialized_construct_using_allocator(to_address(assure_at_least(to)), packed.second(), std::move(elem));
         std::destroy_at(std::addressof(elem));
     }