52matlab技术网站,matlab教程,matlab安装教程,matlab下载

标题: matlab文件组织方法 [打印本页]

作者: matlab的旋律    时间: 2017-10-24 18:12
标题: matlab文件组织方法
本帖最后由 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'







欢迎光临 52matlab技术网站,matlab教程,matlab安装教程,matlab下载 (http://www.52matlab.com/) Powered by Discuz! X3.2