WinMain——Windows编程的EntryPoint

每个程序都有一个入口,WinMain函数是Windows应用程序的入口程序。他的参数如下。

int CALLBACK WinMain(
	HINSTANCE hInstance,
	HINSTANCE hPrevInstance,
	LPSTR     lpCmdLine,
	int       nCmdShow )
{
    
    
	return 0;
}

HInstance是一个用来指向应用程序实例信息的指针

第一个HInstance参数hInstance指向当前应用程序实例的信息。

第二个HInstance参数hPrevInstance指向先前应用程序实例的信息,值得注意的是这个参数总是为NULL。不知道这个参数到底能派上什么用,所以就挺迷的。

第三个LPSTR参数用来接收程序开始运行时,用户通过控制台端输入的额外参数。该参数能够将一个命令行接收为一个特定类型(LPSTR)的字符串。其实仔细一想,C/C++的main函数也有类似的参数。

第四个int参数用来决定我们这个程序的窗体用何种方法展示出来。比如说传入0(预处理宏为:SW_HIDE)的意思为:隐藏当前窗体并打开另一个窗体。具体有那些方式可以参考微软的MSDN。

在函数名WinMain前方还有一个CALLBACKCALLBACK是函数修饰符,他的作用是告诉C++这个函数要用一个叫stdcall的调用约定。这个调用约定使得函数在栈上传递参数的方法与标准C的调用约定(cdecl)略有不同。WindowsAPI使用的应该都是stdcall调用约定。

猜你喜欢

转载自blog.csdn.net/qq_37856544/article/details/105033214