www.pudn.com > myopenforcal.zip > Simplest.cpp


#include "windows.h" 
#include "math.h" 
 
extern "C" __declspec(dllexport) void RegRealFun(char **&,int *&,double (**&)(int ,double *)); 
 
double rfc_mul(int ,double *); 
double rfc_pi(int ,double *); 
 
char *ppchNameDll[]={"mul","pi",""}; //外部函数名; 
int piParaDll[]={1,-1}; //-2表示有不确定的多个自变量,-1表示有0个自变量,0表示有1个自变量,1表示有2个自变量; 
 
double (*ppFunDll[])(int ,double *)={rfc_mul,rfc_pi}; //外部函数指针数组; 
 
///////////////////////////////////////////////////////////////////////////// 
// 动态库的输出函数; 
 
extern "C" __declspec(dllexport) void RegRealFun(char **&ppchName,int *&piPara,double (**&ppFun)(int ,double *)) 
{ppchName=ppchNameDll; piPara=piParaDll; ppFun=ppFunDll; 
} 
 
// 定义一些简单的实数函数; 
 
double rfc_mul(int m,double *x) //计算两个数的积; 
{return x[0]*x[1]; 
} 
double rfc_pi(int m,double *x) //pi常量函数; 
{return 3.14159265358979; 
}