[英]Use workspace variables in a Matlab function
我想使用Matlab函数中加载到我的工作区中的数据。 这是我职能的开始。
function [totalProfit] = compute(p,exit)
%% Declaration of variables
entry=0;
T = length(data);
.
.
.
end
我收到一个错误:
未定义的函数或变量“数据”。
错误在哪里?
变量数据可能是在函数外部定义的,因此超出了范围。
将data
作为参数传递进行compute
,然后在函数内部可用。
冉是正确的,但我想提一提。 通常,只能在函数内部使用作为参数传递给函数的变量,因此,如果要在函数内部使用现有变量,请将其作为输入参数传递。
可以创建全局变量,使您可以在函数内部使用它们而无需将它们作为参数传递,但这通常不是编写代码的最佳方法。 我使用全局变量的时候就是我从一个脚本中调用多个函数,并且我有一些常数将被所有函数使用(例如,重力是一个常见的常数)。 全局变量的另一种选择是使用结构,将要传递给函数的变量包含在其中,因此您只需要一个额外的输入参数,但是仍然要小心一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.