portfolio.m

来自「matlab实用教程」· M 代码 · 共 31 行

M
31
字号
function p = portfolio(name,varargin)
% PORTFOLIO Create a portfolio object containing the 
% client's name and a list of assets
switch nargin
case 0
   % if no input arguments, create a default object
   p.name = 'none';
   p.totalValue = 0;
   p.indAssets = {};
   p.accountNumber = '';
   p = class(p,'portfolio');
case 1
   % if single argument of class portfolio, return it
   if isa(name,'portfolio')
      p = name;
   else
      disp([inputname(1) ' is not a portfolio object'])
      return
   end
otherwise
   % create object using specified arguments
   p.name = name;
   p.totalValue = 0;
   for k = 1:length(varargin)
      p.indAssets(k) = {varargin{k}};
      assetValue = get(p.indAssets{k},'CurrentValue');
      p.totalValue = p.totalValue + assetValue;
   end
   p.accountNumber = '';
   p = class(p,'portfolio');
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?