Is mclRunMain necessary?

7 views (last 30 days)
hnde
hnde on 21 Feb 2011
Hello,
Most of the examples on calling C++ shared libraries have the format:
int main()
{
mclmcrInitialize();
return mclRunMain((mclMainFcnType)run_main,0,NULL);
}
int run_main(int argc, char **argv)
{
if (!mclInitializeApplication(NULL,0))
{
std::cerr << "could not initialize the application properly"
<< std::endl;
return -1;
}
if( !mylibInitialize() )
{
std::cerr << "could not initialize the library properly"
<< std::endl;
return -1;
}
else
{
try
{
mwArray a(5);
myfunc(a);
}
mylibTerminate();
}
mclTerminateApplication();
return 0;
}
I was just wondering if it would be ok to omit mclRunMain function, and just do everything in main, like this:
int main()
{
mclmcrInitialize();
if (!mclInitializeApplication(NULL,0))
{
std::cerr << "could not initialize the application properly"
<< std::endl;
return -1;
}
if( !mylibInitialize() )
{
std::cerr << "could not initialize the library properly"
<< std::endl;
return -1;
}
else
{
try
{
mwArray a(5);
myfunc(a);
}
mylibTerminate();
}
mclTerminateApplication();
return 0;
}
Thank you.

Answers (1)

Peter Webb
Peter Webb on 22 Mar 2011
You need mclRunMain on the Macintosh, and if you're using MATLAB Graphics. Otherwise you can probably do without it.
  1 Comment
hnde
hnde on 23 Mar 2011
Thank you for your answer.
I am using windows. And I am also using Matlab Graphics. Would I still need it?

Sign in to comment.

Categories

Find more on C Shared Library Integration in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!