【Matlab】命名空间的编写(包)

命名空间的编写

创建命名空间

命名空间的命名规则

  • 命名空间名必须以 + 开头,例如 +mypackage
  • 命名空间不能包含空格或特殊字符。
  • 命名空间中的函数或类文件名必须与函数名或类名一致。

目录结构

/path/to/mypackage/
├── +mypackage/
│   ├── myfunction.m
│   └── myclass.m
  1. 编写 myfunction.m

    matlab复制

    function y = myfunction(x)
        y = x * 2;
    end
    
  2. 编写 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
    

安装

先添加包的路径

addpath('/path/to/mypackage');

使用

  1. 直接使用

    mypackage.myfunction(5);  
    
  2. 导入命名空间:

    import mypackage.*
    
    % 调用函数
    result = myfunction(5);  % 输出 10
    disp(result);
    
    % 创建类实例
    obj = myclass(10);
    disp(obj.Value);  % 输出 10
    
    % 调用类方法
    doubledValue = obj.doubleValue();  % 输出 20
    disp(doubledValue);
    

搜索路径

添加到搜索路径

将自己写的模块添加到搜索路径

% 将指定目录添加到路径中
addpath(/path/to/module/)
% 保存当前路径设置,使得下次启动 MATLAB 时,这些路径仍然有效。
savepath;

% 将当前工作目录添加到路径中
addpath(pwd)

删除搜索路径

% 删除一个目录
rmpath('/path/to/module/');
posted @ 2025-01-20 09:28  ReRound  阅读(95)  评论(0)    收藏  举报