欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

对红虎winsock一对多示范的疑问

更新时间: 2014-01-05 02:28:07 责任编辑: Author_N1

 

对红虎winsock一对多示例的疑问
红虎老师发表的winsock一对多示例很经典。但对其中的一处代码有疑问,请高手指点:

*** ActiveX Control Event ***
LPARAMETERS requestid

thisform.cmdNewConnect.Click

LOCAL lcName
lcName = "winsock" + ALLTRIM(STR(thisform.connectCount))

thisform.&lcName..olecontrol1.accept(RequestID)
上面示例最后一行中,宏代换&lcName后面为什么用两个点号才能正确运行?如何从VFP语法上来解释呢?
--参考方法--
第一个.是表示宏替换结束。
--参考方法--
手册云

& 命令
示例 请参阅

执行宏替换。

语法

& MemVarName [.cExpression]

参数
& MemVarName

指定宏替换中引用的内存变量名或数组元素名。请不要加上用于区分内存变量与字段的前缀 M.,否则将产生语法错误。宏的长度不要超过 Visual FoxPro 中允许的最大语句长度。
在宏替换中,变量不能递归引用其自身。例如,下列语句将产生错误信息:

STORE '&gcX' TO gcX
? &gcX


出现在 DO WHILE、FOR 和 SCAN 中的宏替换语句只在循环开始时计算值,在后续的循环中则不再计算值。因此在循环内改变内存变量和数组元素的值对宏替换都无效。

.cExpression

句点分隔符 (.) 和 cExpression 选项可用来在宏后面追加额外的字符。使用 .cExpression 附加在宏后面的 cExpression 也可以是一个宏。

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:28:07
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/10198/
本文WWW.DOC100.NET DOC100.NET版权所有。