C++ 写入.oct文件中的矩阵而不循环?

C++ 写入.oct文件中的矩阵而不循环?,c++,matrix,octave,C++,Matrix,Octave,在Octave.oct文件中,可以提取子矩阵,因此: B = A.extract(a-1,c-1,b-1,d-1) ; 倍频程码中B=A(A:B,c:d)的等价物,但是否可以以类似方式写入矩阵的子集 A(a-1,c-1,b-1,d-1) = B ; // some other smaller matrix 或者我必须循环相关行/列并逐个元素写入吗?假设A属于Array类,您可以使用以下方法之一(请参阅): 对于更多维度,您需要创建一个带有该点坐标的数组。实际上我想做的更像是A.index(

在Octave.oct文件中,可以提取子矩阵,因此:

B = A.extract(a-1,c-1,b-1,d-1) ;
倍频程码中B=A(A:B,c:d)的等价物,但是否可以以类似方式写入矩阵的子集

A(a-1,c-1,b-1,d-1) = B ; // some other smaller matrix 

或者我必须循环相关行/列并逐个元素写入吗?

假设
A
属于
Array
类,您可以使用以下方法之一(请参阅):


对于更多维度,您需要创建一个带有该点坐标的
数组。

实际上我想做的更像是A.index(idx_向量(A,b),idx_向量(c,c))=b;i、 我有一个大的零填充矩阵a,我想插入一个小的矩阵B。@babelproofreader你说得对。我误解了你的问题。我已经更新了答案。
Array<T> & insert (const Array<T> &a, octave_idx_type r, octave_idx_type c)
Array<T> & insert (const Array<T> &a, const Array<octave_idx_type> &idx)
A.insert (B, a, c);