Как сделать так, чтобы заполнение классов включало круглые скобки даже для пустых списков параметров?
Я снова вернулся в Delphi 2010 после нескольких лет работы в Visual Studio. Я хотел бы заставить IDE вести себя по-другому:
Я хотел бы, чтобы автозаполнение среды IDE учитывало круглые скобки при объявлении функции / процедуры. Пример: если я объявлю процедуру x(); Я хотел бы автозаполнение для создания процедуры myobj.x(); а НЕ процедура myobject.x; как это происходит. Да, это не имеет значения, но я педантичен. Есть идеи?
2 ответа
Delphi не требует скобок, когда нет параметров; Я сомневаюсь, что это возможно.
Это не должно иметь значения в интерфейсе или реализации, где очевиден факт объявления метода.
function TMyClass.IsDefaultPropValue: Boolean;
Я могу видеть, где это будет иметь значение в реальном коде, который вызывает метод, где вы хотели бы уточнить, что это не переменная, как в
// Unit MyClass
type
TMyClass=class(TSomething)
public
function IsDefaultPropValue: Boolean;
end;
// In a far distant block of code in another unit that uses the above unit, using the
// nasty "with" (not you, of course - one of your coworkers):
with MyClassInstance do
begin
// More lines of code. FirstPass is a local boolean variable.
if FirstPass then
begin
if IsDefaultPropValue then
begin
// More lines of code
end
else
begin
// Alternate branch of code
end;
end
else
begin
if IsDefaultPropValue then
//.....
end;
end;
В этом случае не ясно, что IsDefaultPropValue
это функция, а не логическая переменная, и я бы использовал ее как
if IsDefaultPropertyValue() then ...
// or better yet:
if MyClassInstance.IsDefaultPropValue() then ...
чтобы было понятно.
AFAIK, нет пути.
Object Pascal не требует скобок, когда у вас (как сказал Кен) нет параметров - поэтому он безвреден.
PS: необходимость в скобках даже для непараметрических подпрограмм - одна из самых неприятных и раздражающих вещей в языках VS (особенно в VB.NET). Конечно, это просто ИМХО...