Resize

모양과 크기가 변경된 새 행렬을 반환합니다.

bool matrix::Resize(
  const ulong  rows,     // 
  const ulong  cols,     // 새로운 수 혹은 열
  const ulong  reserve=0 // 아이템에 어마운트 보관
   );
 
bool vector::Resize(
  const ulong  size,     // 새로운 사이즈.
  const ulong  reserve=0 // 아이템에 어마운트 보관
   );

매개 변수

rows

[in]  새로운 수 혹은 행.

cols

[in]  새로운 수 혹은 열.

반환값

성공하면 true를 반환하고 그렇지 않으면 false를 반환.

참조

행렬(또는 벡터)이 처리됩니다. 복사본이 생성되지 않습니다. 모든 크기를 지정할 수 있습니다(즉, rows_new*cols_new!=rows_old*cols_old). Reshape와 달리 행렬은 행 단위로 처리됩니다. 열 수를 늘리면 추가 열의 값이 정의되지 않습니다. 행 수를 늘리면 새 행의 요소 값이 정의되지 않습니다. 열 수가 줄어들면 행렬의 각각의 행이 잘립니다.

   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]]
   */