我第一次接触lingo是数学建模课上老师介绍的,但是有matlab,所以lingo一直用的不多。最近偶然的机会接触到了C++调用lingo,发现网上资料很少,而且基本都残缺不全,因此这里整理一下自己的分析。
这里不再赘述lingo是什么,直接上正文。
首先在lingo的安装目录下,发现有“Programming Samples”文件夹,这里面放的都是lingo与其它语言连接的例子:ASPNET、C#NET、Excel(也就是宏)、Fortran、Java、VBNET、VBScript、VC++。这里以C++为例分析一下常用的几种情况。
C++调用lingo之一——直接调用
这里要涉及一点C的main函数的知识。我发现很多人写c的主函数要不就是
int main()
甚至直接
void main()
当然,C一出来之后在C Programing Language一书中一直都是
int main(int argc, char* argv[])
而在lingo给的示例中也不例外,这第一种调用方法中,示例给出的程序需要给C程序传个argv的参数(也就是要调用的lingo函数名+\n+GO,例如Tran.lng \n GO)。当然,直接写程序的时候也可以在程序中给argv赋值,是一样的。
C++调用lingo之二——传参
传参的程序比直接调用稍显复杂,不过至少有例可循。
下面这一段直接拿来用就可以(感觉这个写的就不错,