这是在我学习MFC时曾遇到的比较麻烦的东西:LPSTR,LPCSTR,LPTSTR,LPCTSTR,LPWSTR,LPCWSTR。初次看到时确实很不适应,不过现在说来也很简单了。
在《字符编码篇》中提到Windows下编程需要注意编码转换特别是ASCII码和Unicode码。Windows已经提供大量支持Unicode码的函数,但有时我们还是需要转换的。上面的6个指针类型,现在加以说明。
L表示长整形,P表示指针,C表示const,STR表示字符串。W表示宽字符wide char。T是一个适配用的宏。
有#ifdef_UNICODE的时候
_T就是宽字符类型
没有#ifdef_UNICODE的时候
_T就是ANSCII类型
所以上面的6个类型就很简单了。