小问题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函数括号里的写法。
谢谢各位了。 说简练一点就是不知道eval(ct')这个写法代表什么意思? 你把这点去除看看还能运行吗? 当然不行啊.
eval是不是列取值 将字符串作为数据输出的。
页:
[1]