Я не очень понял вопрос, т.к. не владею java. Но у меня вопрос по теме: в Delphi нельзя никак назвать объект/сущность, к которой обращаются через with? Т.е. аналогично self в функции класса, чтобы было например this.free ?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re: Ключевое слово для доступа к объемлющему классу из вложенного
В общем случае вложенность может быть произвольного уровня, поэтому альтернатив тому, как в Java сделано, я не вижу. В целом это редкий синтаксис (он нужен только если происходит затемнение идентификатора), поэтому выделять для него отдельное ключевое слово — тоже не слишком-то правильно. В общем это один из тех случаев, где в Java сделано нормально (если вообще считать, что эта концепция вложенных классов со ссылкой на внешний — нужна, в чём я, лично, сомневаюсь).
K>Я не очень понял вопрос, т.к. не владею java. Но у меня вопрос по теме: в Delphi нельзя никак назвать объект/сущность, к которой обращаются через with? Т.е. аналогично self в функции класса, чтобы было например this.free ?
Можно
var this := Сущность;
with this do
begin
this.Free;
end;
Re[3]: Ключевое слово для доступа к объемлющему классу из вложенного
Здравствуйте, rudzuk, Вы писали:
R>Здравствуйте, Jack128, Вы писали:
J>> R>Можно хелпер написать
J>> Для каждого типа — свой отдельный? Сомнительная идея.
R>Достаточно к базовому классу. Для записей, да, к каждому типу.
К TObject ?? Ну тогда кроме .Free и .ClassName ничего вызвать нельзя будет. В чем тогда смысл ??
Re[7]: Ключевое слово для доступа к объемлющему классу из вложенного
Здравствуйте, Jack128, Вы писали:
J> R>Достаточно к базовому классу. Для записей, да, к каждому типу.
J> К TObject ?? Ну тогда кроме .Free и .ClassName ничего вызвать нельзя будет.