我下開始一個小遊戲++使用SDL。我一直在尋找指針和引用,並且我瞭解它們之間的差異。最好的辦法++
int main(int argc, char* argv[])
{
SDL_Renderer* renderer = NULL;
TTF_Font* font = NULL;
renderer = SDL_CreateRenderer(window, -1, 0);
if(renderer == NULL)
{
return 1;
}
font = TTF_OpenFont("OpenSans.ttf", 12);
if(font == NULL)
{
return 1;
}
texture = renderText(...)
return 0;
}
SDL_Texture* renderText(...)
{
}
這是我的程序的一部分,現在我需要將渲染器和字體對象傳遞給renderText()函數。我的問題是,我應該將它們作爲指針(它們已經是)嗎?還是作爲參考?
這是我怎麼想它看起來:
SDL_Texture* renderText(SDL_Renderer* renderer,...)
{
}
renderText(renderer,...)
或
SDL_Texture* renderText(SDL_Renderer &renderer,...)
{
}
renderText(*renderer,...)
在renderText()FUNC我到SDL_Renderer的指針傳遞到其它SDL的功能也將在後面,所以我會在第二種情況下必須再次使用&。