![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Cannot complete a class with incomplete methods implementations. [D7, WinXP]
VEZ © (2006-06-22 15:58:00)При добавлении любого метода в класс возникает:
Cannot complete a class with incomplete methods implementations.
Как выяснилось это из-за того что в другом методе класса объявлен тип
procedure AnotherMethod;
type a
...
end;
var
...
begin
...
end;
как только объявление типа убираешь, всё работает, дак почему же нельзя объявлять тип в пределах метода.
evvcom (2006-06-26 09:56:00) [1]> [6] StriderMan © (23.06.06 16:08)
а то, что end - это часть record или class, но никак не type. Соответственно и указывать его надо со "своим" началом, а не чужим. Мало ли что у меня там после type, может record с 15 кейсами вложенными? Разве мне это дает право показывать в конце 15 end-ов и ни одного case в начале?
StriderMan (2006-06-23 16:08:00) [2]
> Просто [1]
и что такого криминального в end?
если тип recordили classто описание типа оканчивается end.
evvcom (2006-06-23 15:24:00) [3]> [4] StriderMan © (23.06.06 15:13)
> грубо.
Ну извини. :)
Просто [1] могло тебя заставить исправиться, даже если ты его сначала и не видел, но ты не сделал этого. А я написал про бред через довольно большой промежуток времени.
StriderMan (2006-06-23 15:13:00) [4]
> evvcom © (23.06.06 08:47) [3]
> Бред.
грубо.
поправка к собственному посту: тип в методе объявлять можно любой, кроме class
evvcom (2006-06-23 08:47:00) [5]> [2] StriderMan © (22.06.06 16:03)
Бред.
ors_archangel (2006-06-22 16:03:00) [6]А что за end; после type? Может тут не то, но вообще секции (var, type) не имеют end
StriderMan (2006-06-22 16:03:00) [7]
> дак почему же нельзя объявлять тип в пределах метода.
прими это как данность :) ну нельзя и все.
сделай лучше так
type a
...
end;
procedure AnotherMethod;
var
...
begin
...
end;