在这段代码中,我看到它们在初始化SDL之前声明了一个指针:
int main(int argc, char* argv[]) {
SDL_Window *window; // Declare a pointer
SDL_Init(SDL_INIT_VIDEO); // Initialize SDL2
// Create an application window with the following settings:
window = SDL_CreateWindow(
"An SDL2 window", // window title
SDL_WINDOWPOS_UNDEFINED, // initial x position
SDL_WINDOWPOS_UNDEFINED, // initial y position
640, // width, in pixels
480, // height, in pixels
SDL_WINDOW_OPENGL // flags - see below
);
(完整代码可在here中找到)
在创建窗口之前声明指针是否会更有条理,只是这样会更整洁和更有条理?为什么要事先声明?
如果我猜的话,最好将所有指针放在一个区域中,这样您就可以一次查看所有指针。还是习惯于养成好习惯?
习惯在int main()
的开头声明指针。 (我也从其他示例程序中看到了这种情况)
答案 0 :(得分:2)
出于技术原因,您无需在SDL_Init之前声明指针。声明指针变量没有任何意义,它只是在堆栈上为该指针保留空间。可以在SDL_Init之后轻松声明它,也可以在调用SDL_CreateWindow的语句中声明它。
老实说,我不知道为什么他们在文档中这样写。