包的编写
创建包
包的命名规则
- 包名必须以
+
开头,例如+mypackage
。 - 包名不能包含空格或特殊字符。
- 包中的函数或类文件名必须与函数名或类名一致。
目录结构
/path/to/mypackage/
├── +mypackage/
│ ├── myfunction.m
│ └── myclass.m
-
编写
myfunction.m
:matlab复制
function y = myfunction(x) y = x * 2; end
-
编写
myclass.m
:matlab复制
classdef myclass properties Value end methods function obj = myclass(value) obj.Value = value; end function result = doubleValue(obj) result = obj.Value * 2; end end end
导入包
-
导入包:
import mypackage.*;
-
调用包中的函数和类:
% 调用函数 result = myfunction(5); % 输出 10 disp(result); % 创建类实例 obj = myclass(10); disp(obj.Value); % 输出 10 % 调用类方法 doubledValue = obj.doubleValue(); % 输出 20 disp(doubledValue);
-
包名冲突:
-
如果包名与其他包或变量冲突,可以使用完整的包路径调用,例如:
result = mypackage.myfunction(5);
-
搜索路径
添加到搜索路径
将自己写的模块添加到搜索路径
% 将指定目录添加到路径中
addpath(/path/to/module/)
% 保存当前路径设置,使得下次启动 MATLAB 时,这些路径仍然有效。
savepath;
% 将当前工作目录添加到路径中
addpath(pwd)
删除搜索路径
% 删除一个目录
rmpath('/path/to/module/');
标签:myfunction,end,路径,搜索,Matlab,myclass,obj,mypackage
From: https://www.cnblogs.com/SHUN-ReRound/p/18680745