主要内容

subsref

下标引用

描述

类过载subsref实现自定义索引为对象的类的行为。有关更多信息,请参见对象索引

例子

B= subsref (一个,年代)是由MATLAB调用®的语法(我),{我},或一个是一个对象。

例子

全部折叠

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

一个=魔法(5);:一个(1:2)
ans =2×517 24 1 8 15 23 5 7 14 16

语法,:一个(1:2)在调用结果B = subsref (A, S)在哪里年代是一个1×1结构在哪里S.type是'()'S.subs是{1:2,':'}。冒号表示一个冒号作为下标。

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

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

语法,C{1:2},导致调用(c1, c2) = subsref (C, S)在哪里S.type“{}”S.subs{(1 2)}

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

一个=结构(“数量”10);A.number
ans = 10

的语法A.number在调用结果B = subsref (A, S)在哪里S.Type“。”S.subs“数量”

输入参数

全部折叠

索引对象数组,通过MATLAB的对象数组索引表达式的一部分。

索引结构,通过MATLAB作为索引substruct的索引表达式调用subsref引起的。这种结构有这些字段:

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

  • 潜艇单元阵列,特征向量,或字符串标量包含实际的下标。

指数表达式可以使用不止一个级别,形成更复杂的表达式。例如{1}.field (3:5)有三个级别的索引。这个表达式,年代这些字段是一个3×1结构数组:

disp (S(1))类型:“{}”潜艇:{[1]}disp (S(2))类型:”。的潜艇:‘领域’disp (S(3))类型:“()”潜艇:{[3 4 5]}

数据类型:结构体

输出参数

全部折叠

索引表达式的结果。

更多关于

全部折叠

了解索引表达式

(我)是一个数组元素的形成一个下标指定的向量。由此产生的数组大小是一样的除了特殊情况一个都是向量。在这种情况下,(我)有相同数量的元素但的方向一个

(I, J)是一个数组的元素形成的矩形子矩阵的一个,下标指定的向量J。由此产生的数组长度(我)行和长度(J)列。一个冒号作为下标表示维度的所有元素。例如,(我,:)意味着所有指定的列的行向量。同样的,(:,J)意味着指定的列的所有行J

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

{我}在哪里一个是一个单元阵列和是一个标量形式的指定单元格数组的副本吗一个。如果有多个元素,这个表达式是一个逗号分隔的列表。您还可以使用多个下标指定一个标量元素,如一个{3、4}

(我).field一个是一个结构数组和是一个标量形式复制数组的字段的名称吗。如果有多个元素,这个表达式是一个逗号分隔的列表。如果一个是一个1×1结构数组,然后下标可以删除。在这种情况下,A.field是一样的(1).field

扩展功能

之前介绍过的R2006a