| 550 | |
| 551 | template <typename T> |
| 552 | VRef<T> vnew_array(size_t n) { |
| 553 | VRef<T> result = VRef<T>::alloc(n); |
| 554 | T *ptr = result.as_ptr(); |
| 555 | for (size_t i = 0; i < n; i++) { |
| 556 | new (ptr + i) T(); |
| 557 | } |
| 558 | return result; |
| 559 | } |
| 560 | |
| 561 | template <typename T> |
| 562 | VRef<T> vnew_uninitialized_array(size_t n) { |