Matlab里的类class,及例子
(2013-11-21 08:02:18)
标签:
matlab类class面向对象 |
分类: 工:编程 |
Matlab里的类class,是把类的定义和类方法的实现都放在一个m文件中,用类的名字命名文件,即"类名.m"。这样的实现方法与C++、java等常用编程语言相似。使用类(class)有很多好处,其中一个重要的好处便是解决变量名冲突和让函数、对象的结构清晰。
% Create a class named
payment, placed in file 'payment.m'
classdef payment
properties
rate;
term;
principle;
end
methods
function
pay = payment(r, t, p)
pay.rate = r;
pay.term = t;
pay.principle = p;
end
function
disp(pay)
money = pay.principle * (1 +
pay.rate)^pay.term;
fprintf('After %d year, you
will obtain %f money !\n', pay.term, money)
end
end
end
但这样做是有代价的,其中一个便是效率问题。如果普通函数的百万次调用的时间开销约0.25秒,而封装后的函数的百万次调用的时间开销高达14.5秒,相差约70倍。
以下是一个基本的Matlab中class的写法。
\begin{lstlisting}
\end{lstlisting}
用法:
1. 创建object:pay = payment(0.1, 10, 100)
2. 调用: pay.rate = , pay.term = , pay.principle
=

加载中…