调用2个lib库,如果里面有同名类,会有冲突吗?
比如我的exe,使用了静态库A和A1,里面都有类MyClass,那么在运行的时候会有冲突吗? 2个库中的MyClass成员函数是共用一份内存吗?
如果库A和A1同时又都使用了库B,B里面有静态成员变量static int age;那么在exe运行后,2个库里面的age是一份内存吗? 那且不是很危险? 如果A对age修改了,且不是会影响A1中的age值?
同样的,再问一下,如果B中有一个单例模式类
class TMainCtrl
{
private:
TMainCtrl(){};
static TMainCtrl *m_pMainCtrl;
public:
static TMainCtrl *GetInstance();
static void Destory();
};
TMainCtrl *TMainCtrl::m_pMainCtrl = new TMainCtrl();
那么A使用了静态库B,A1也使用了静态库B,最后exe使用A和A1,那么在exe中有几份MainCtrl()类代码? 类的静态成员变量是一个值吗?