Programming |
When MATLAB encounters a subscripted reference, such as that made in the getAccountNumber
function
MATLAB calls the portfolio subsref
method to interpret the reference. If you do not define a subsref
method, the above statement is undefined for portfolio objects (recall that here p
is an object, not just a structure).
The portfolio subsref
method must support field-name and numeric indexing for the getAccountNumber
function to access the portfolio name
field.
function b = subsref(p,index) % SUBSREF Define field name indexing for portfolio objects switch index(1).type case '.' switch index(1).subs case 'name' if length(index)== 1 b = p.name; else switch index(2).type case '()' b = p.name(index(2).subs{:}); end end end end
Note that the portfolio implementation of subsref
is designed to provide access to specific elements of the name
field; it is not a general implementation that provides access to all structure data, such as the stock class implementation of subsref
.
See the subsref
help entry for more information about indexing and objects.
Changing the Portfolio Constructor | Object Precedence |
© 1994-2005 The MathWorks, Inc.