Matlab代码管理习惯是每一个函数写一个M文件。调用函数时,优先从当前文件夹下获取相关函数,也就是说我们每次需要调用这个函数时就要将这个函数的m文件复制到当前文件夹下,这样造成了文件冗余,且使用起来不够方便。
因此,笔者会将常用函数调试稳定后编译成*.p文件,放到matlab预设路径下永久使用。下面以读取*.las文件的函数为例,说明方法:
1、生成p文件
在matlab的命令行窗口输入如下命令:pcode LASreadAll.m即可在对应的m文件路径下生成同名p文件——LASreadAll.p。p文件与m文件运行效果一样,且p文件不需要编译,其第一遍的运行速度和以后的运行速度一样,而m文件第一遍运行需要编译,运行速度较慢;此外,m文件可以随时修改,而p文件只能使用不能查看和修改。
2、将p文件整理到一个固定文件夹下
这个固定的文件夹推荐放到matlab安装路径下,以后尽量不要放到容易找到删除的地方,例如,笔者在D:\matlab2018b路径下建立了Mr_ChaiFunction文件夹用于存放自己的p文件。
3、将包含p文件的文件夹关联
matlab有默认库目录,你写的代码调用函数时,检索优先级为当前文件夹>默认文件目录。此外还会对电脑上的所有文件进行查找,给出疑似你要调用但是目前目录没有的函数的路径。为了让matlab能够检索我们的p文件函数,需要将包含p文件函数的文件夹添加到默认路径下。
操作流程如下:在matlab主页上点击设置路径→添加文件夹或添加并包含子文件夹→选择你要添加的文件夹→保存
此时,我们可以在任意工作中调用LASreadAll这个函数而不用再将这个函数的m或p文件添加到当前工作目录下。
function 中写在前面的注释会作为说明文档出现。在命令行窗口输入help LASreadAll弹出如下内容:
看,就是源码里function下面,正式代码上面的注释部分内容。
今天你学到了吗?