| 644 | typename mem_manager |
| 645 | > |
| 646 | void array<T,mem_manager>:: |
| 647 | resize ( |
| 648 | size_t new_size |
| 649 | ) |
| 650 | { |
| 651 | if (this->max_size() < new_size) |
| 652 | { |
| 653 | array temp; |
| 654 | temp.set_max_size(new_size); |
| 655 | temp.set_size(new_size); |
| 656 | for (size_t i = 0; i < this->size(); ++i) |
| 657 | { |
| 658 | exchange((*this)[i],temp[i]); |
| 659 | } |
| 660 | temp.swap(*this); |
| 661 | } |
| 662 | else |
| 663 | { |
| 664 | this->set_size(new_size); |
| 665 | } |
| 666 | } |
| 667 | |
| 668 | // ---------------------------------------------------------------------------------------- |
| 669 |