Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо