Class 参数名称与类成员冲突

Class 参数名称与类成员冲突,class,delphi,parameters,delphi-xe6,Class,Delphi,Parameters,Delphi Xe6,我有一个参数,其名称与with/do范围内的过程相同。经过数小时的调查,我意识到了这一点,但现在我正在寻找一个比重命名参数更好的解决方案 程序测试(参数:TMyTape); 开始 使用TSomeClass.createdo 尝试 AClassFunc(参数);// 是否可以引用Param参数来解决此问题,而不需要重命名Param 如果要将与一起使用,则不能使用 另一种解决方案可能是为TSomeClass声明一个变量,而不使用with/do子句 这种方法会起作用,这就是我编写代码的方式。只有一组非

我有一个参数,其名称与with/do范围内的过程相同。经过数小时的调查,我意识到了这一点,但现在我正在寻找一个比重命名参数更好的解决方案

程序测试(参数:TMyTape);
开始
使用TSomeClass.createdo
尝试
AClassFunc(参数);//
是否可以引用Param参数来解决此问题,而不需要重命名Param

如果要将
一起使用,则不能使用

另一种解决方案可能是为TSomeClass声明一个变量,而不使用with/do子句


这种方法会起作用,这就是我编写代码的方式。只有一组非常狭窄的场景适合使用
。这不是其中之一。

据我所知,我要说:您已经概述了这两种解决方案。我不认为有一个语法允许你真正想要的东西。我建议您放弃使用
,并将对象分配给变量。Ime,
使用
只会产生可以避免的问题。我强烈建议您去重命名您的
参数。事实上,避免对法拉表和方法使用相同的名称。为什么?Delphi实际上是唯一一个支持这一点的对象Pascal编译器。例如,如果您将代码移植到FPC中,您将遇到一大堆重复的名称错误。此外,如果遵循Delphi代码格式,所有函数参数的名称中都应该有
A
前缀。