Resize

Belirtilen şekle ve büyüklüğe sahip yeni bir matris geri döndürür.

bool matrix::Resize(
  const ulong  rows,     // yeni satır sayısı
  const ulong  cols,     // yeni sütun sayısı
  const ulong  reserve=0 // korunacak eleman sayısı
   );
 
bool vector::Resize(
  const ulong  size,     // yeni büyüklük
  const ulong  reserve=0 // korunacak eleman sayısı
   );

Parametreler

rows

[in]  Yeni satır sayısı.

cols

[in]  Yeni sütun sayısı.

Geri dönüş değeri

Başarılı olursa true, aksi takdirde false geri döndürür.

Not

Matris (veya vektör) yerinde işlenir. Kopya oluşturulmaz. Herhangi bir büyüklük belirtilebilir, yani, rows_new*cols_new!=rows_old*cols_old. Reshape'den farklı olarak, matris satır satır işlenir. Sütun sayısı artırıldığında, yeni sütunların elemanları tanımsız olur. Satır sayısı artırıldığında da yeni satırların elemanları tanımsız olur. Sütun sayısı azaltıldığında ise matrisin her bir satırı kesilir.

Örnek:

   matrix matrix_a={{1,2,3},{4,5,6},{7,8,9},{10,11,12}};
   Print("matrix_a\n",matrix_a);
   matrix_a.Resize(2,6);
   Print("Ressize(2,6)\n",matrix_a);
   matrix_a.Resize(3,5);
   Print("Resize(3,5)\n",matrix_a);
   matrix_a.Resize(2,4);
   Print("Resize(2,4)\n",matrix_a);
 
   /*
   matrix_a
   [[1,2,3]
    [4,5,6]
    [7,8,9]
    [10,11,12]]
   Ressize(2,6)
   [[1,2,3,4,5,6]
    [4,5,6,10,11,12]]
   Resize(3,5)
   [[1,2,3,4,5]
    [4,5,6,10,11]
    [11,12,3,8,8]]
   Resize(2,4)
   [[1,2,3,4]
    [4,5,6,10]]
   */