Main Content

end 作为对象索引

为对象定义 end 索引

当您在对象索引表达式中使用 end 时,如 A(4:end)end 函数会返回与该维度中最后一个元素对应的索引值。

类可以重载 end 函数以实现特殊的行为。如果您的类定义一个 end 方法,MATLAB® 将调用该方法来确定如何解释表达式。

end 方法使用以下调用语法:

ind = end(A,k,n)

这些参数的说明如下:

  • A 是对象

  • k 是使用 end 语法的表达式中的索引

  • n 是表达式中的索引总数

  • ind 是表达式中要使用的索引值

例如,假设有一个 3×5 数组 A。当 MATLAB 遇到以下表达式时:

A(end-1,:)

MATLAB 使用以下参数调用为对象 A 定义的 end 方法:

ind = end(A,1,2)

这些参数意味着 end 语句出现在第一个索引中,并且有两个索引。end 类方法返回第一个维度的最后一个元素的索引值(在本例中为被减去 1 的值)。原始表达式的计算如下:

A(3-1,:)

有关自定义索引的类中 end 的重载的示例,请参阅Customize Parentheses Indexing for Mapping Class

相关主题