我是中国学生。首先,我的英语很差。哈哈~~~ 我对Visualfox Pro的某些语法规则感到非常困惑。
我的表中有一个名为id的字符字段,请运行以下命令以查找其id等于“ A0001”的记录:
DetailViewController
&id返回变量名A0001,我只想知道解释器如何将变量名与表中的字符字段进行比较?
对于上面的代码,也可以像下面这样重写:
index on id tag _id
id='A0001'
find &id
答案 0 :(得分:1)
如果您的变量名称与当前所选表中的字段名称相同,则在引用该变量时将使用该字段的内容。您可以通过在前缀前面加上“ m”来避免这种情况。 (表示使用内存变量而不是字段)。这样做:
id = 'A001' && assignment always goes to the variable
SEEK m.id
&技术可能有用的一种方式是,如果您要引用以下几个值之一:
id1 = 'A001'
id2 = 'B002'
to_find = 'm.id2'
SEEK &to_find && Acts like: SEEK m.id2
答案 1 :(得分:-1)
所有有关编译器和解释器的工作方式。他们分享了相同的3个步骤:
步骤1(称为词法分析):编译器将提交的源代码分解为称为lexemes的有意义的元素,并生成一个 来自词位的令牌序列。
第2步(称为语法分析):编译器使用在词法分析期间生成的标记序列来生成树状结构 数据结构,称为抽象语法树,AST
步骤3(称为语义分析):编译器使用语法分析过程中生成的AST来检查程序是否一致 带有源编程语言的所有规则
因此,“&”是一个符号,因此他们可以识别出它是一个变量,而没有找到字符串名称“ id”