24小时热门版块排行榜    

查看: 207  |  回复: 1
当前主题已经存档。

fspdlh

金虫 (正式写手)

[交流] 【求助】load函数出错

我把一个程序中经常调用的一些数据存在mat文件中,如果哪个函数要用就load这个文件,一般没问题,但这次出现了如下的错误提示,没看明白
??? Either eval, evalin, assignin, an assignment in a script, load, or an
assignment at the debugger prompt has attempted to dynamically add the
variable "status" to the workspace of one of:
   o  an anonymous function,
   o  a nested function, or
   o  a function that has a nested function.

If you are in the debugger and need a variable, say X, for temporary use
while debugging, make it a global:

   K>> global X; X = ...

One way to avoid this error in the other cases is to pre-declare the variable
in the desired function.  Specific suggestions to eliminate the error:
   o  eval, evalin, assignin --- for many reasons, it is best to avoid using
      these altogether.
   o  assignment in a script --- a script can be turned into a function, with
      argument- and result-passing often clarifying the code.
   o  load --- use the form of load that returns a struct result.

Dynamic addition of variables to workspaces associated with nested functions
is not allowed because the scoping rules for nested functions rely on the
presence or absence of variables in the text of the code.  Permitting the
addition of variables at run-time would make the scoping rules more difficult
to explain and programs harder to understand.  Similarly, dynamic addition of
variables to the workspace of an anonymous function is not allowed.

[ Last edited by sunxiao on 2009-3-21 at 09:53 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fspdlh

金虫 (正式写手)


sunxiao(金币+1,VIP+0):希望能详细说明,欢迎常来交流 3-21 09:42
呵呵,看明白了,用load函数加载mat文件中的变量,则加载的变量的变量名不能是某个函数的函数名

[ Last edited by fspdlh on 2009-3-21 at 16:28 ]
2楼2009-03-20 18:30:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 fspdlh 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见