直接访问函数调用返回的结构字段

信息处理 matlab
2022-02-16 01:29:52

当我在Filter is too large中询问它时,这段代码运行良好,但是当我在另一台 PC 上再次尝试时,它给了我这个错误:

 Warning: Direct access of structure fields returned by a function call (e.g.,
                  call to Untitled2) is not allowed. See MATLAB 7.10 Release Notes, "Subscripting      Into     Function Return Values" for details. 
    ??? Attempt to reference field of non-structure array.

这向我转发了有关“下标到函数返回值”的帮助,如果你有一个函数,如下所示,它返回一个结构数组:

function structOut = getStruct
structOut = struct('fieldA', 5, 'fieldB', 10);

通过直接点索引函数的返回值来访问结构的字段不再有效,如下所示:

getStruct.fieldA

相反,您应该首先将返回的结构分配给一个变量,然后对变量进行点索引:

s = getStruct;
s.fieldA
ans =
     5

但是我怎样才能将它应用于乘法呢?

0个回答
没有发现任何回复~