的subsref

标引用

描述

类过载的subsref以实现对类的对象自定义索引行为。欲了解更多信息,请参阅对象索引

=的subsref(一个小号被称为MATLAB®的语法A(ⅰ)A {I}, 要么什么时候一个是一个对象。

例子

全部收缩

这个例子显示了如何调用MATLAB®的subsref以下索引表达。

A =魔法(5);A(1:2,:)
ANS =2×517 24 1 8 15 23 5 7 14 16

语法,A(1:2,:),结果打电话给B =的subsref(A,S)哪里小号是一个1×1的结构,其中S.type是 '()'S.subs为{1:2, ':'}。冒号表示冒号用作下标。

这个例子显示了如何调用MATLAB®的subsref用于索引表达使用括号。

C = {“一”,2,“三”};13 C {1:2}
ans = " 1 "
ANS = 2

的语法,C {1:2},结果在到呼叫[C1,C2] =的subsref(C,S)哪里S.type“{}”S.subs{(1 2)}

这个例子显示了如何调用MATLAB®的subsref索引表达式使用点记号。

一个=结构(“数量”,10);一个号码
ans = 10

语法一个号码结果在一个呼叫B =的subsref(A,S)哪里S.Type''S.subs“数量”

输入参数

全部收缩

索引对象阵列,由MATLAB传递作为对象数组,它是索引表达式的一部分。

索引结构,通过MATLAB作为索引substruct导致此调用的subsref索引表达式。这种结构具有以下字段:

  • 类型-包含字符向量或字符串标量(){}, 要么,指定下标类型。

  • 潜艇- 单元阵列中,字符向量,或包含实际标串标量。

索引表达式可以使用一个以上的水平,形成更复杂的表达式。例如A {1}点域(3:5)有三个级别的索引。这个表达式,小号是具有这些字段的3×1结构的数组:

DISP(S(1))类型: '{}' 潜艇:{[1]} DISP(S(2))类型: ''潜艇: '字段' DISP(S(3))类型: '()' 潜艇:{[3 4 5]}

数据类型:结构

输出参数

全部收缩

结果索引表达的。

更多关于

全部收缩

了解索引表达式

A(I)是一个数组从的元件形成一个由下标向量指定一世。得到的数组大小与一世除特殊情况一个一世都是向量。在这种情况下,A(I)具有相同数量的元素的一世但有方向一个

A(I,J)是一个数组从矩形子矩阵的元件形成一个,由下标向量指定一世Ĵ。将所得的阵列具有长度(我)长度(J)列。用作下标A冒号表示该维度的所有元素。例如,A(I,:)指由向量所指定的那些行的所有列一世。同样的,(:,J)指由指定的列的所有行Ĵ

A(I,J,K,...)是下标指定的数组。结果是长度(我)——- - - - - -长度(J)——- - - - - -长度(K)……

A {I}哪里一个是一个单元阵列和一世是一个标量形式的阵列中的指定细胞的拷贝一个。如果一世有多个元素,此表达式是逗号分隔的列表。您也可以使用指定的标量元素多标,如一个{3、4}

A(I)点域什么时候一个是一个结构阵列和一世标量是否在具有名称的字段中形成数组的副本领域。如果一世有多个元素,此表达式是逗号分隔的列表。如果一个是一个1×1结构数组,则下标可以被丢弃。在这种情况下,A.field是相同的A(1)点域

扩展功能

之前介绍过的R2006a