Anonymous function to class property method.
显示 更早的评论
I have a situation somewhat like the following mockup:
absfoo.m
classdef (Abstract) absfoo
methods (Abstract)
[f] = objfun(o, x)
[c, ceq] = confun(o, x)
end
end
confoo.m
classdef confoo < absfoo
methods
function [f] = objfun(o, x)
f = sin(sum(x.^2));
end
function [c, ceq] = confun(o, x)
c(1) = cos(0.1+x(1).^2);
c(2) = x(1)+x(2);
ceq = [];
end
end
end
bar.m
classdef bar
properties
myfoo
end
methods
function runme(o)
x0 = [0 1];
fmincon(@o.myfoo.objfun,x0,[],[],[],[],[],[],@o.myfoo.confun)
end
end
end
runscr.m
clear all
mf = confoo()
b = bar();
b.myfoo = mf;
b.runme()
Running runscr results in an error message similar to this:
Undefined function or variable 'o.myfoo.objfun'.
Error in fmincon (line 536)
If I add a wrapper method in bar, I can work around this error -- but I'd like to be able to do without the wrapper.
Edited to add commas to fmincon argument list and also empty lb, ub arguments per Steven's correction.
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Use Prebuilt MATLAB Interface to C++ Library 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!