placement new和完美转发

e.g.

template <class Type, typename ...Args>
  Type *allocate(Args &&...args) {
      void *mem = this->get_available_mem(sizeof(Type));
      Type *new_ptr = reinterpret_cast<Type *> (mem);
      new (new_ptr) Type(std::forward<Args>(args)...);
      return new_ptr;
  }
posted @ 2021-01-31 21:26  linsinan1995  阅读(57)  评论(0)    收藏  举报