Hej, robię sobie małą gierkę 2D w SDL2 i napotkałem mały problem związany z przekazaniem wskaźnika na obiekt do funkcji.
Gdy mam wszystko w mainie, działa jak należy
int main(int argc, char **argv) {
/*
jakiś kod
*/
int rc = 0;
SDL_Window *window = nullptr;
SDL_Renderer *renderer = nullptr;
/*
jakiś kod
*/
if (SDL_Init(SDL_INIT_EVERYTHING) != 0) {
return 1;
}
rc = SDL_CreateWindowAndRenderer(SCREEN_WIDTH, SCREEN_HEIGHT, 0, &window, &renderer);
if (rc != 0) {
SDL_Quit();
return 1;
}
/*
jakiś kod
*/
}
Okienko się ładnie inicjalizuje i jest gra działa ok.
Jednak chciałem całą inicjalizację spakować do funkcji init, gdzie już ładuję różne inne rzeczy, ale nie wiem jak przekazać poprawnie te wskaźniki window i renderer (pojedyncze), bo ogólnie funkcja SDL_CreateWindowAndRenderer wymaga wskaźnika na wskaźnik: SDL_Window** ,SDL_Renderer**.
Udało mi się to przekazać w mainie, ale przekazanie obiektów do funkcji rządzi się swoimi prawami i nie rozumiem jak to ma być zrobione dla podwójnego wskaźnika.
Podjąłem kilka prób, ale nie udało się