WinMain的返回值
Return value of WinMain
Sup all,我有一个关于WinMain的问题。在VS2010中,_tWinMain的返回值是"(int( msg.wParam"。我不明白为什么它返回 wParam。
什么是wParam?我可以将其更改为"返回 0"吗?
当WM_QUIT
被GetMessage
处理时,它会终止消息循环。WM_QUIT
的文档是这样说的:
wParam
在 PostQuitMessage 函数中给出的退出代码。
这是您从 WinMain
返回的值。因此,此值只是作为退出代码传递给 PostQuitMessage
的值。
您可以更改代码以返回您想要的任何内容,如果您愿意,可以返回零。但是,在正常终止中,PostQuitMessage
将传递为零,因此进行此类更改不会获得太多好处。
从
WinMain
返回的值将按原样传递给ExitProcess函数。c/c ++运行时或ExitProcess本身不解释和使用uExitCode - 所以你可以使用绝对的任何值(只能返回STILL_ACTIVE
不好,但即使返回它不是错误( - 这是你的应用程序,你需要自己决定你需要返回什么代码。此代码可以通过调用 GetExitCodeProcess 来检索另一个应用程序 - 并以某种方式解释它,如果应用程序中的 uExitCode 包含一些信息(通常这用作错误代码,0 表示没有错误(。但是在大多数情况下,uExitCode 不包含任何信息,也没有人对您的返回代码感兴趣 - 所以绝对没有不同您返回的值。返回msg.wParam
当然也是可能的,但没有比返回 0 或说__LINE__
更有意义
相关文章:
- 从python中调用C++函数并获取返回值
- 为什么模板类中的对象不能返回值
- 返回值优化:显式移动还是隐式
- lock_guard是否保护返回值
- 调用CreateProcess()并获取字符串的返回值
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- 编译器警告:执行到达值返回函数的末尾而不返回值
- 查找 GCD:并非所有控制路径都返回值
- 在 Arduino 上使用 sscanf 会导致与 const char * 不匹配,并且返回值始终相同,尽管输入值不同
- 将返回值存储在函数指针数组的指针中是如何工作的?
- 如何从 std::thread 返回值
- 将返回值从 exe 传递到 bat,并将其传递给 C# 中的进程
- 方法错误"not all control paths return a value"和方法不返回值
- 如何读取 C++ SAFEARRAY**,该 SAFEARRAY** 是 COM 互操作的结果,其中 C# 返回值为
- 对fread的返回值感到困惑
- 程序不向函数返回值
- 如何在另一个函数中使用返回值作为参数?
- 如何使用 uint64_t 键类型从 std::map<int, std::string> 返回值?
- 使用 std::p air 进行返回值优化
- WinMain的返回值