调整大小

设置数组新大小 (更小)。

bool  Resize(
   int  size      // 大小
   )

参数

size

[输入]  数组的新大小。

返回值

true - 成功,false - 试图将其大小设置为小于零。

注释

改变数组大小可以优化内存使用。位于右侧的超出元素都将丢失。丢失元素的内存被释放, 或是不依据存储器管理的模式。

为降低内存碎片, 增加数组大小由之前通过 Step (int) 方法给定的步长, 或 16 (省缺) 来进行。

例如:

//--- 例程 CArrayObj::Resize(int)
#include <Arrays\ArrayObj.mqh>
//---
void OnStart()
  {
   CArrayObj *array=new CArrayObj;
   //---
   if(array==NULL)
     {
      printf("对象创建错误");
      return;
     }
   //--- 添加数组元素
   //--- . . .
   //--- 调整数组大小
   if(!array.Resize(10))
     {
      printf("调整大小错误");
      delete array;
      return;
     }
   //--- 删除数组
   delete array;
  }