📄 subject_63887.htm
字号:
<p>
序号:63887 发表者:badboy 发表日期:2003-12-07 08:41:08
<br>主题:#define WIN32_LEAN_AND_MEAN 见过这种用法吗?
<br>内容:#define WIN32_LEAN_AND_MEAN <BR>/*这个定义是干什么用的?给编译器看的?程序里根本再没有看到他的影子?*/<BR>#include <stdio.h><BR>#include <stdlib.h><BR>#include <windows.h><BR><BR>DWORD WINAPI ThreadFunc(LPVOID);<BR><BR>int main()<BR>{<BR> HANDLE hThrd;<BR> DWORD threadId;<BR> int i;<BR> <BR> for (i=0; i<5; i++)<BR> {<BR> hThrd = CreateThread(NULL,<BR> 0,<BR> ThreadFunc,<BR> (LPVOID)i,<BR> 0,<BR> &threadId );<BR> if (hThrd)<BR> {<BR> printf("Thread launched %d\n", i);<BR> CloseHandle(hThrd);<BR> }<BR> }<BR> // Wait for the threads to complete.<BR> // We'll see a better way of doing this later.<BR> Sleep(2000);<BR><BR> return EXIT_SUCCESS;<BR>}<BR><BR>DWORD WINAPI ThreadFunc(LPVOID n)<BR>{<BR> int i;<BR> for (i=0;i<10;i++)<BR> printf("%d%d%d%d%d%d%d%d\n",n,n,n,n,n,n,n,n);<BR> return 0;<BR>}<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:金鱼王 回复日期:2003-12-07 10:11:40
<br>内容:摘自《MSDN》<BR>为加速生成过程,Visual C++ 提供了如下定义(这些定义通过排除一些不太常用的 API,减小了 Win32 头文件的大小): <BR><BR>VC_EXTRALEAN <BR>WIN32_LEAN_AND_MEAN <BR>VC_EXTRALEAN 定义 WIN32_LEAN_AND_MEAN 和若干 NOservice 定义,如 NOCOMM 和 NOSOUND。(有关 NOservice 定义列表,请参见头文件 Windows.h 和 MFC 头文件 afxv_w32.h。)<BR><BR>用 Visual C++ 应用程序向导创建的应用程序自动使用 VC_EXTRALEAN。可以在旧式 MFC 应用程序中手动定义 VC_EXTRALEAN 以加速生成过程。<BR><BR>非 MFC 应用程序可以定义 WIN32_LEAN_AND_MEAN 和适用的 NOservice 定义以减少生成时间。<BR><BR>试图使用这些定义排除的 API 会导致编译器错误。例如,如果定义 NOCOMM 或 VC_EXTRALEAN 的程序试图使用 PurgeComm,则会导致下面的错误:<BR><BR>error C2065: 'PurgeComm' : undeclared identifier<BR>error C2064: term does not evaluate to a function<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -