在MFC中,这句什么意思?

[复制链接]
查看11 | 回复3 | 2009-1-7 20:03:37 | 显示全部楼层 |阅读模式
看别人的程序时看到的
LPWSTR wcname;
wcname = L'\0';
//这里L'\0'是什么意思?
//***********
//还有:
_RecordsetPtr rec = NULL;
CString query;
query = "SELECT * FROM [PSS Country Table] ORDER BY [Id]";
rec.CreateInstance(__uuidof(Recordset));
rec->Open((LPCTSTR) query, _variant_t((IDispatch *) pConnection, true), adOpenDynamic,adLockOptimistic, adCmdText);
//为什么要rec.CreateInstance(__uuidof(Recordset));
//_variant_t((IDispatch *) pConnection, true)作用是什么?当中的IDispatch是干什么用的?
各位,那除了这个L,还有其他像这种一个字母的关键字吗?

回复

使用道具 举报

千问 | 2009-1-7 20:03:37 | 显示全部楼层
L'0'是指用unicode字符集中的0字符。 rec.CreateInstance(__uuidof(Recordset)); 是初始化,应该是将该分配的资源分配好,必须调用。 rec->Open((LPCTSTR) query, _variant_t((IDispatch *) pConnection, true)是将记录集与一个连接集挂钩并打开数据库,IDispatch我就不知道了。=============================================L不是关键字...
回复

使用道具 举报

千问 | 2009-1-7 20:03:37 | 显示全部楼层
L——编译系统关键字,编译时候后面的字符串按unicode方式存储。IDispath是自动化接口,微软在IUnkown上继承了这个接口,是为了给解释性脚本语言使用的。本来c++环境使用com是没必要使用继承使用这个接口的。你可以看IDispath里面定义的几个函数,目的就是根据函数编号和函数名称来调用接口中的函数,这个给解释性脚本语言(网页中的j...
回复

使用道具 举报

千问 | 2009-1-7 20:03:37 | 显示全部楼层
L这里是一个宏, 意思是将后面的字符或字符串转换为宽字符(每个字符占两个字节)'\0'就是,字符串的终止符了, 也就是0.第二个问题, 这是数据库的, 可能对你来说还不能理解这些东西, 记住这样就行了. 这是调用com接口来访问数据库的...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行