|
本帖最后由 matlab的旋律 于 2017-10-24 18:14 编辑
把所有的文件放到一个路径下很凌乱,尤其matlab中一个函数一个文件!想要分类存放怎么办,之前一直用addpath函数(添加路径)和rmpath函数(删除路径)来实现,今天看到package的使用方法,mark一下。原文链接:http://blog.sina.com.cn/s/blog_88c6b0cc0101qrm7.html
package文件夹是以+号开头的文件夹。
调用包内的函数要使用 包名.函数名
private文件夹是只能供包内的函数使用的函数, 使用时直接写函数名即可
废话不多说,直接来例子最直观!文件夹结构如下图所示,其中的函数只是简单的加减乘除四则运算:
以下测试代码包含的内容:
调用包内的函数
调用子包的函数
引入包内的函数
包内函数调用private文件夹内的函数
%Matlab代码
clc;clear;
help mypackage %列出包内的各个函数的help,不包含子包的
what mypackage %列出包内文件列表及子包的列表
sum1_2=myPackage.add(1,2) %调用包内的函数要使用 包名.函数名
% import myPackage %整个包都引入
import myPackage.sub %只引入一个函数,
sub1_2=sub(1,2) %引入后可以直接用函数名调用了
clear import
% doc import
div1_2=myPackage.childPackage.div(1,2) %两层的包
mul1_2=myPackage.invokeMulInPrivate(2,3) %包内的函数可以调用包内 private文件夹中的函数
depdencyOfInvokeMulInPrivate=depfun('myPackage.invokeMulInPrivate') %列出该函数使用到的函数,可以看到调用了private文件夹中的函数
myPackage.errorWhenInvokeAddFunctionInTheSamePackage %即使是包内的文件,也不能直接调用包内的函数!!必须加上包名,不爽啊!!!
可以在每个包内的函数文件内部 写上'import packagename.*' 注意不能在函数内部写'clear import',只能在主函数内写'clear import'
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|