??????С?????DLL??DLL???????????????????????????????????????????????????????????????????????????????????壬??????????б?????????????????????????????????????????????檔????DLL????????????????????????????????????????????????????
??????????????????????????????????
?????????????????????????????plotdata.c??plotdata.h??plotdata.lib???plotdata.dll?????
?????????plotdata.c??plotdata.h???????У?????????????????????????#include “plotdata.h”??
???????????????????д??plotdata.lib?????????->Propertites->Link->Input->Additional Dependecies?м???plotdata.lib??????????MATLAB???????дl(shuí)ibmat.lib??libeng.lib??????????plotdata.lib???????????????£?????д?·??????"D:dataplotadata.lib"????????????
?????????????????п????????plotdata.h?е?????????
????????????????????ν“???”??????????????д??????????????DLL??
????????????????????????????????????????????к??????????????????????????plotdata.h??????????????????plotdata????????????????£?
????extern LIB_plotdata_CPP_API void MW_CALL_CONV plotdata(const mwArray& rgbData);
??????????Щ???????壬?????????????????????????
????typedef void (*HMAT)(const mwArray& rgbData);
?????????????????????plotdata.dll
????HINSTANCE hDLL=NULL;//DLL???
????hDLL=LoadLibrary("plotdata.dll");
????HMAT plotData=(HMAT)GetProcAddress(hDLL??"plotdata");
????//??????????DLL??????????????????????
????????????????????????ú???plotData??????????????????plotdata.dll???????~
??????????????????????????????

 

extern LIB_plotdata_C_API
bool MW_CALL_CONV plotdataInitializeWithHandlers(
mclOutputHandlerFcn error_handler??
mclOutputHandlerFcn print_handler);
extern LIB_plotdata_C_API
bool MW_CALL_CONV plotdataInitialize(void);
extern LIB_plotdata_C_API
void MW_CALL_CONV plotdataTerminate(void);
extern LIB_plotdata_C_API
void MW_CALL_CONV plotdataPrintStackTrace(void);
extern LIB_plotdata_C_API
bool MW_CALL_CONV mlxPlotdata(int nlhs?? mxArray *plhs[]?? int nrhs?? mxArray *prhs[]);
extern LIB_plotdata_C_API
long MW_CALL_CONV plotdataGetMcrID();
extern LIB_plotdata_C_API bool MW_CALL_CONV mlfPlotdata(mxArray* rgbData);