Что вы подразумеваете под "классом, который использует"? Может быть, вы имеете в виду «единицу, которая использует»? Если это так, вам нужно добавить и A, и B в предложение uses
. Затем вы можете различить две процедуры, написав A.One.SomeProcedure
или B.One.SomeProcedure
. Если вы просто напишите One.SomeProcedure
, будет использоваться процедура в единицах, перечисленных last в предложении uses
. [Здесь я предполагаю, что One
- это классы, содержащие процедуры класса SomeProcedure
. Если SomeProcedure
- это обычная процедура класса One
, вам, конечно, нужно создать объект этого класса и использовать его. Затем вы можете сделать myobj := A.One.Create
или myobj := B.One.Create
, где var myobj: A.One
или var myobj: B.One
, соответственно.]
(Помните также, что каждый блок содержит два uses
предложения: одно в начале раздела interface
и одно в начале раздела implementation
. Если вы используете что-то из устройства A в строке N , предложение uses
, содержащее единицу A, должно быть расположено на линии выше N .)
Также обратите внимание, что в Delphi класс должен называться TOne
с префиксом T
. Все следуют этому соглашению, и без него это выглядит странно.