怎样在Delphi中实现宏替换(50分)

  • 主题发起人 主题发起人 叶铭德
  • 开始时间 开始时间

叶铭德

Unregistered / Unconfirmed
GUEST, unregistred user!
在Foxpro中:
a='mydata.dbf' //赋值
use &a //宏替换

请问在Delphi中如何实现上述功能?
 
a:='mydata.dbf';
table1.tablename:=a;
table1.open;
 
象FoxPro这种解释语言中的一些语法,
你是无法在Delphi这种编译语言中见到的。
比如:
FoxPro 中,你可以这样写:
str='Use MyTable'
&str
Delphi 中,行吗?(No!)
这不是Delphi不如FoxPro,而是Delphi更规范,
功能更强,更清晰地区分了“关键字”、“标识符”和“字符串值”。
忘记宏替换吧!它是规范软件开发的一场噩梦!
如果你觉得有什么在Delphi中非用宏替换不可的,
不妨说出来,大家探讨探讨。
我认为,不用宏替换,照样能做你想做的任何东西。
 
用微软的VBScript control ocx可以为你的程序增加解释执行的宏, 包括变量, VB函数...

在本论坛的 ftp 下可以找到我放上去的安装程序
ftp://www.gislab.ecnu.edu.cn/pub/bigriches/VBScriptControl10en.exe
 
to 坏蟑螂:如果对于数据库,那么可以这样
S := ‘SELECT * FROM DB’
QUERY1.SQL.CLEAR;
QUERY1.SQL。ADD(S);
QUERY1.OPEN;
不过老兄的话有道理。
多数类似FOXPRO的命令是可以用其它方法代替的,
 
接受答案了.
 
后退
顶部