Страница: 1 |
Вопрос: Зависимость типов | Добавлено: 01.01.04 22:00 |
Автор вопроса: ![]() |
Люди, две траблы: 1. Имеются два пользовательских типа данных А и В. И нужно объявить в типе А переменную типа В, а в типе В - переменную типа А. И всё это добро отказывается запускаться, пробовал и классы, и другие модули - без толку.
2. Почему нельзя объявить объект такого же типа данных, в котором он находится? В С++ это делается... |
Ответы | Всего ответов: 4 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() Хранитель чата ICQ: 137392264 Вопросов: 8 Ответов: 557 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 01.01.04 23:49 |
сделай А и В классами, а в классах сделать ссылку на object. Toгда сможешь подставить любой класс. И класс Б в класс А и самого себя. |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Лидер форума ICQ: 216865379 Вопросов: 106 Ответов: 9979 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 02.01.04 01:16 |
На счет первого: это как так? Рекурсивное определение? :O Такое разве вообще воможно? Как тебе компилятор, по твоему, должен эту переменную создавать? |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 224590251 Вопросов: 29 Ответов: 64 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 02.01.04 15:55 |
Люди, я попробовал с классами - не пашет, есть ограничения на массивы, переменные польз. типов и т.д. А я попробовал так: Set ParseFunc.bpExtendedParams(0).bpAsFunc = ParseFunc(Params(0))
Это всё в теле процедуры ParseFunc, bpAsFunc As Object, тип, возвращаемый функцией, - пользов. тип CodeLine. Классы не получатся. И это не работает. Почему? Без рекурсии тоже никак. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Лидер форума ICQ: 216865379 Вопросов: 106 Ответов: 9979 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 02.01.04 21:20 |
А какова сама задача? |
Страница: 1 |
|