如何在matlab中隐藏自己的函数定义iefunction m-file?

时间:2014-05-10 18:31:26

标签: matlab

我已经为我的最后一年项目创建了自己的函数定义,即函数m文件。现在我想要隐藏该函数定义。有没有办法在matlab中做到这一点? 我希望这个函数m文件应该成为我的matlab编译器目录的一部分,这样当我从任何m文件调用该函数时,它被调用并执行,但它的函数定义不应该对任何人可见..实际上我我希望隐藏我的顾问和项目评估委员会的功能定义..我不希望他们应该得到关于该功能定义的任何提示...有人对我说,“将你的m文件转换为c或c ++代码然后将它添加到matlab目录中。你的函数定义将被隐藏,并且在被调用时也会被执行。“ 但我不知道该怎么做?谁能帮我做这件事?我正在使用matlab 7.9.0(R2009b) 请帮帮我,如果有人知道的话......:)

1 个答案:

答案 0 :(得分:2)

这里有两个部分

  1. '隐藏'功能定义
  2. 可以从m文件中访问某个功能
  3. 实际上还有第三个我不会在下一行讨论或讨论  3.为什么你要隐藏顾问的最后一年项目的工作?评估委员会


    1)'隐藏'功能定义

    有一个名为pcode (documentation)

    的内置函数混淆器

    这可以直接在函数m文件中使用,并将在当前目录中创建函数的副本,文件扩展名为.p,其中代码为“hidden”。

    用法

    pcode(foo) % foo.m is your function
    

    2)访问功能

    .p文件可用于任何函数,只要它在Matlab路径上即可。 因此,只需将包含.p文件的文件夹添加到Matlab路径即可。

    有几种方法可以做到这一点,我个人会使用addpath

    (替代方法将.p文件添加到路径上已有的文件夹中)