1.windows 编程里面 UNREFERENCED_PARAMETER 这个函数是干什么的?
作用:告诉编译器,已经使用了该变量,不必检测警告!
在VC编译器下,如果您用最高级别进行编译,编译器就会很苛刻地指出您的非常细小的警告。当你生命了一个变量,而没有使用时,编译器就会报警告:
“warning C4100: ''XXXX'' : unreferenced formal parameter.”
所以,为了让编译器不必检测你的警告,就使用UNREFERENCED_PARAMETER语句。
2.LPCWSTR
LPCWSTR是一个指向unicode编码字符串的32位指针,所指向字符串是wchar型,而不是char型。
因为在VS2005以后,编码方式默认为Unicode,部分函数在使用时默认调用Unicode方式(函数名+W,exp:MessageBox+W=MessageBoxW),而非ASNI方式(函数名+A,exp:MessageBox+A=MessageBoxA)。
3.请问c++中的#include "stdafx.h"是什么意思?
#include "stdafx.h"
是预编译处理器把stdafx.h文件中的内容加载到程序中来。
stdafx.h
1名称的英文全称为:Standard Application Fram Extend
所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。
预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectname.pch。 ...
4.在查找预编译头的时候遇到意外的文件结尾,是否忘记向源中添加“#include “stdAfx.h””
则表示没有包含stdafx.h文件,设置成“不使用预编译头”就能消除错误。
5.当把头文件当成cpp文件添加到头文件目录下,其实工程的文件属性是cpp文件,导致编译的时候把头文件识别为cpp文件编译,那么在头文件中定义的类会编译错误,导致显示多次指定同一个类。
解决办法:重新添加文件内容,并要更改成头文件类型的文件,之后可以编译成功了。只有多动手编译,才能发现这些问题,解决了这些问题,就能更好的认识。