I have a C++ shared library with functions like
extern "C" void myfunc(const std::string &foo, std::map<std::string>&bar)
I have a C++ program which uses dlopen()
to LAZY_LOAD load the library and then dlsym()
to load myfunc
. However, I am confused by the fact that the linker was told to use C style linking with C++ STL style arguments. How does that work? Won't that corrupt the stack?