| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Функция переданная в параметре |
| Автор: _Наталья_ 17.1.2007, 17:47 |
| Здравствуйте, у меня маленький вопрос, может кто-то сможет мне помочь У меня проект, в котором надо, цитирую "Класс будет тестирован при помощи внешней функции, принимающей два параметра - двоичное дерево и функцию обработки узлов". может не много коряво написала, просто перевожу, и не знаю точно как на русском будет. В общем это двоичное дерево, имеющее кк ои называют левого и правого сына, сыновья, как и сам отец это узлы. Хотелось бы узнать, может кто-то сможет помочь, что вообще означает эта передача данных в параметрах и как это делается Заранее благодарна! |
| Автор: Anikmar 17.1.2007, 17:55 |
| Параметры - это то, что записывается в скобках после имени функции. Например: int Func1(void *Param1, int Param2); Функция Func1 принимает 2 параметра: указатель и целое число. В вашем случае имеется некое дерево - как-то организованное. Далее некая функция тестирования, которая должна что-то там тестировать bool TestFun(void *pTree,TObrFun Fun); Здесь pTree - указатель на дерево Fun - функция проверки узла. Так как я понятия не имею что эта за функция - предположил, что она на входе получает указатель на узел Тогда это можно представить так: typedef bool (*)(void*) TObrFun; // У меня всегда было с этим плохо, надеюсь правильно т.е. TObrFun - это указатель на функцию, принимающую указатель и возвращающую bool |
| Автор: _Наталья_ 17.1.2007, 18:15 | ||
то есть если я правильно понимаю, то получается что мы декларируем указатель на функцию - (*), который будет называться TObrFun, а (void*) это параметры? а можно вместо воида к примеру Node*? или обязательно воид? Огромное спасибо за ответ! |
| Автор: Anikmar 17.1.2007, 18:32 |
Конечно можно - это я просто пример дал. |
| Автор: JackYF 17.1.2007, 18:45 |
Конечно, можно и Node* |
| Автор: _stranger_ 17.1.2007, 18:46 | ||
|
| Автор: JackYF 17.1.2007, 18:46 |
| блин |
| Автор: Anikmar 17.1.2007, 18:48 |
| _stranger_, У меня всегда были проблемы с правильным объявлением указателей на функцию |
| Автор: _Наталья_ 17.1.2007, 18:51 |
| Огромное вам всем спасибо! Как сдам экзамен - напишу, это ли хотел учитель или нет |