调用Dll传出map参数有关问题

调用Dll传出map参数问题
我在dll中定义了一个函数,在外部调用这个函数,传入vector数组(数组中有值),传出map<>(map中原来为空,传出的时候有值)。请问这样在外部能接收到map的值吗。我的程序执行到外部传出的时候就出错,不知道为什么。好像是内存的问题。请大牛指教吧。谢谢!

------解决方案--------------------
DLL导出函数的参数和返回值不要用stl容器,否则会出现很多问题的。可以自己写个结构体或链表,然后传指针。
------解决方案--------------------
使用一个载体.

class CMapData
{
private:
map<int,int> m_mapData;
};

class CVecData
{
private:
vector<int> m_vecData;
};

CMapData *GetMapData(CVecData* pData);