Resize
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
[输入] 新的行数.
- cols
[输入] 新的列数.
返回值
成功时返回 true,否则返回 false。
- 注意
矩阵(或向量)就地处理。 不会创建任何副本。 可以指定任何大小,即,rows_newcols_new!=rows_oldcols_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]]
*/