Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Создание компоненты в функции которая вызывает сама себя. / 7 сообщений из 7, страница 1 из 1
24.04.2005, 13:10
    #33032140
4_Alex
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
надо что то типа :
int __fastcall Tmf::Add_Child(int i)
{
int j = 0;
TZQuery *q_tmp;
q_tmp->Connection = db_p;
......

j=j+Add_Child(j+1);
q->Next();
}
delete[] q_tmp;
return j;
}

Т.е. функция вызывает сама себя, и внутри создаётся компонента, он должна быть уникальной для каждого вызова и в конце исполнения функции надо эту компоненты убить. Количество вызовов ограничено, те зацикливания быть не можут.

Заранее благодарен.
...
Рейтинг: 0 / 0
24.04.2005, 13:46
    #33032163
shmar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
В чем собственно проблема?
Если в создании объекта, то после объявления указателя, вызывай new:

TZQuery *q_tmp;
q_tmp = new TZQuery();

а потом удаляй:
delete q_tmp;

Может поподробней опишешь? А то не очень понятно цель всего этого
...
Рейтинг: 0 / 0
24.04.2005, 14:46
    #33032183
4_Alex
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
shmarВ чем собственно проблема?
Если в создании объекта, то после объявления указателя, вызывай new:

TZQuery *q_tmp;
q_tmp = new TZQuery();

а потом удаляй:
delete q_tmp;

Может поподробней опишешь? А то не очень понятно цель всего этого

Проблема в том что я несилён в Сях.
ругается на строчку q_tmp = new TZQuery();
вот так:
[C++ Error] mf_U.cpp(726): E2285 Could not find a match for 'TZQuery::TZQuery()'

Цель: есть таблица клиенвто и таблица которая описывает связи клиентов (сервисы), надо нарисовать в TTreeView это всё дело, те основоное дерево клиентов, под к-л клиентом ещё дерево клиентов и тд. Если делать это всё одной компонентой то не получается так как следуюущее вложение функции использует ту же самую компоненту и получается что "забывается" предыдущая ветка, вот и возникла необходимость дял каждго вызова функции сотворять новую компоненту.
...
Рейтинг: 0 / 0
24.04.2005, 15:20
    #33032195
shmar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
По поводу конструктора я действительно проглядел
Попробуй:
q_tmp = new TZQuery(NULL);
или укажи вместо NULL компонент типа *TComponent(какой нить DataModule например). Если конечно конструтор принимает аргументы типа *TComponent/
А что это за компонент такой TZQuery() ?

4_Alexвозникла необходимость дял каждго вызова функции сотворять новую компоненту.
Это изврат. Советую разыскать комненты DevExpress, а имнно компонент TdxDBTreeList. С его помощью очень легко строится дерево по результату запроса без всяких функций вызывающих самих себя, а путем настроек 3-4 свойств. Это конечно если программирушь в Билдере.
...
Рейтинг: 0 / 0
24.04.2005, 19:08
    #33032313
4_Alex
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
TZQuery это типа TQuery но для роботы с постгресом.
Набор Zeos компонент.

Спасибо,
q_tmp = new TZQuery(NULL);
заработало.

Я в билдере.
А где моно найти DevExpress?
...
Рейтинг: 0 / 0
24.04.2005, 20:58
    #33032353
shmar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
http://www.devexpress.com/ - это сайт производителя, но там кажется эти компоненты платные. А так поисковики должны указать на бесплатные ресурсы:))
...
Рейтинг: 0 / 0
24.04.2005, 23:36
    #33032431
shmar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание компоненты в функции которая вызывает сама себя.
Кстати, интересно узнать про эти компоненты Zeos, кинь ссылку плз
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Создание компоненты в функции которая вызывает сама себя. / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]