这是否会导致内存泄漏,因为pWinsock未被删除?以下5行代码是否会导致内存泄漏?
Winsock* CreateWinsock()
{
Winsock* pWinsock=new Winsock;
return pWinsock;
}
编辑:其实,我不能删除我的指针,因为它是游戏(pWinsock)的成员收到新创建的Winsock在上面的代码。这有什么不对吗?
class Game{
public:
Game();
~Game();
void CreateWindowClass(HINSTANCE);
void CreateRessources(HINSTANCE);
void ShowLoginScreen();
HWND Getm_hWnd();
public:
D2DResources* pD2DResources;
Winsock* pWinsock;
MessageLog* pMessageLog;
private:
HWND m_hWnd;
};
只要你在其他地方删除它。真的,智能指针有帮助。 – chris 2013-03-17 18:38:00
你**不能**删除这个函数,因为那样你会返回一个悬挂指针。 – us2012 2013-03-17 18:38:43
你的意思是智能指针有帮助吗? – 2013-03-17 18:38:57