MATLAB函数体作为另一个函数的参数

点击查看代码
	%%开发算法里,x为决策变量,参数个数不固定,采用fun_para = {}, 类似数组、结构体,花括号内可以有多个类型不同的元素
	function val = fun_test(x,fun.fun_para)  %% 形参fun.fun_para
		val == fun(x,fun_para);  %% 调用fun_para
	end

	function y = fun_line(x,para)
		y = para{1}'*x + para{2};
	end
	%function val = fun_test(x,fun.fun_para)  %% 形参fun.fun_para
	%	val == fun(x,fun_para{1},fun_para{2});  %% 调用fun_para
	%end
	%
	%
	% function y = fun_line(x,a,b)
	%	y = a'*x + b;
	%end

	clear;
	clc;
	a = [1:2:3];
	x = [1:10:100];
	b = 15;
	%para = {a,b};
	val = fun_test(x,@fun_line,{a,b})  % @fun_line 艾特函数名实现调用
	% fun_test函数调用fun_line函数,定义中使用了fun.fun_line,在主函数中使用则采用了@fun_line,{函数参数},的格式。
上一篇:js-节点关系


下一篇:帆软:判断是否为空