2
說我有這樣的對象:這是將指針指向對象的正確方法嗎?
class Game{
public:
void SetPointer(D2DResources&);
public:
D2DResources* pD2DResources;
};
使用此項功能:
void Game::SetPointer(D2DResources& p)
{
pD2DResources=&p;
}
而我呢,在我的WinMain:
Game game;
D2DResources d2DResources();
game.SetPointer(d2DResources);
可以嗎?如果沒有,那麼做什麼是正確的方法?這個想法是稍後訪問d2DResources的功能,如下所示:
pGame->pD2DResources->OnRender();
pGame是指向上述遊戲對象的指針。
如果接收者保留指針的副本,我傾向於傳遞指針而不是引用,但這是一個慣例。但關鍵問題是所有權問題。誰將擁有D2DResources? – 2013-03-15 23:24:11