tirfan 发表于 2006-12-1 21:12

小问题eval的使用

这个程序是照书上抄的. 但是我不明白,为什么eval()函数中,那个变量是这么写的eval(ct')为什么变量上面会有那么一撇呢
function exm104_3()
global hedit hpop hlist
clf reset
set(gcf,'unit','normalized','position',);
set(gcf,'defaultuicontrolunits','normalized');
set(gcf,'defaultuicontrolfontsize',11);
set(gcf,'defaultuicontrolfontname','隶书');
set(gcf,'defaultuicontrolhorizontal','left');
set(gcf,'menubar','none')
str='通过多行指令绘图的交互界面';
set(gcf,'name',str,'numbertitle','off');
h_axes=axes('position',,'visible','off')
uicontrol(gcf,'Style','text',...
         'position',,...
         'String','绘图指令输入框')
hedit=uicontrol(gcf,'Style','edit',...
         'position',,...
            'Max',2)
hpop=uicontrol(gcf,'Style','popup',...
         'position',,...
         'String','spring|summer|autumn|winter');
hlist=uicontrol(gcf,'Style','list',...
         'position',,...
         'String','Grid on|Box on|Hidden off|Axis off',...
            'Max',2)
hpush=uicontrol(gcf,'Style','push',...
         'position',,...
         'String','Apply')
set(hedit,'callback','calledit1');
set(hpop,'callback','calledit1');
set(hpush,'callback','calledit1');   

function calledit1
global hedit hpop hlist
ct=get(hedit,'string');
vpop=get(hpop,'value');
vlist=get(hlist,'value');
if ~isempty(ct)
    eval(ct')
    popstr={'spring','summer','autumn','winter'};
    liststr={'grid on','box on','hidden off','axis off'};
    invstr={'grid off','box off','hidden on','axis on'};
    colormap(eval(popstr{vpop}))
    w=zeros(1,4);w(vlist)=1;
    for k=1:4
      if w(k); eval(liststr{k});else eval(invstr{k});end
    end
end

程序可以运行成功。我就是不明白那个eval函数括号里的写法。
谢谢各位了。

tirfan 发表于 2006-12-1 21:16

说简练一点就是不知道eval(ct')这个写法代表什么意思?

lxq 发表于 2006-12-1 22:32

你把这点去除看看还能运行吗?

tirfan 发表于 2006-12-3 19:04

当然不行啊.
eval是不是列取值

twb0624 发表于 2012-7-19 08:19

将字符串作为数据输出的。
页: [1]
查看完整版本: 小问题eval的使用