C# Matlab混编时关于@的问题

Matlab里面有这样的函数,例如
function F = myfun(x)
F = x*x*x-[1,2;3,4];
x0 = ones(2,2); % Make a starting guess at the solution
options = optimoptions('fsolve','Display','off'); % Turn off display
[x,Fval,exitflag] = fsolve(@myfun,x0,options)
这里用到了@,将该函数打包到dll中,程序调用的时候就出现“找不到指定的程序”,我测试过其他类型的函数都没问题,就是一用到@就出问题,是不是C#调用的时候不支持,还是怎么地?

@在C# 中的意义
让转移字符"\"保持原意,不要转义,如一个地址字符串
string path="c:\abc\";
默认的"\"是作为转义来使用的,而不是一个真的斜杠字符串
所以这个地方要取到地址,正确的写法应该是:
string path=@"c:\abc\"; //这里的@让斜杠保持原意,不要转义
或者
string path="c:\\abc\\"; //不用@ 斜杠表示转义,所以要多加个斜杠追问

那你用过Matlab里面的@ 吗?特别是使用过Matlab打包的dll并且该dll中含有@的吗?

追答

和Matlab中的@意义完全不一样。当然用法就不一样了。在Matlab中的@有泛指的意思

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-09-11
没搞过 MATLAB , 走了
这样可以么?
相似回答
大家正在搜