Форум программистов, компьютерный форум, киберфорум
Наши страницы

Функция должна принять указатель на саму себя - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Хранение экземпляров классов-наследников, и вызов их методов http://www.cyberforum.ru/cpp-beginners/thread1065275.html
Столкнулся с проблемой. Есть класс-родитель и 2 класса-наследника. class Base { public: void baseFunc(); }; class Derived1 : public Base
C++ Получить все возможные варианты комплектов книг. Исправить код #include<iostream.h> using namespace std; int main() { int i=0, j=0, k=0, m=0; while(i<7) { http://www.cyberforum.ru/cpp-beginners/thread1065260.html
Определить структуру Модель Виндовс для работы с моделями экранных окон.В качестве полей задаются C++
Определить структуру Model Window для работы с моделями экранных окон.В качестве полей задаются:заголовок окна,координаты левого верхнего угла,размер по горизонтали,размер по вертикали,состояние...
C++ Найти уравнение прямой, проходящей через точку А
Найти уравнеие прямой (в форме альфа*x+бета*y+гамма=0),проходящей через точку А(X1,Y1) перпендикулярно к прямой ax+by+c=0. Пожалуйста помогите написать программу.
C++ Узнать какая кнопка была нажата SDL2.0 http://www.cyberforum.ru/cpp-beginners/thread1065234.html
Привет, как в этом примере узнать какая кнопка была нажата, я хочу сделать для каждой кнопки отдельное действия, но не могу понять, как узнать какая кнопка была нажата Код: /*This source code...
C++ Определить, можно ли представить число в виде суммы двух квадратов натуральных чисел Дано натуральное число n.Определить,можно ли представить его в виде суммы двух квадратов натуральных чисел.Если да,то найти все пары x,y такие,что n=x^2+y^2 (x<=y). Очень нужна ваша помощь,помогите... подробнее

Показать сообщение отдельно
daslex
1285 / 529 / 109
Регистрация: 02.08.2011
Сообщений: 2,750
21.09.2015, 19:51  [ТС]
Я не понимаю этого кода, но вижу, что он вообще не похож на показанный псевдокод.
Я сейчас не доказываю, что это не то или что это то. Я не вижу того, что я ожидал. Вопрос не в рекурсивном указателе на функцию. А в функции, вовнутрь которой приходит указатель, который уже показывает на адрес функции, в которую он пришел.

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

Вот как-то так вот витиевато все.
Это не мое самолюбие. Я правда не вижу этого у Вас в коде.

Добавлено через 7 минут
C++
1
2
3
foo(pFunc,
foo(foo,
foo(&foo
должно иметь вид (псевдокод).
C++
1
2
3
**ptr; //Обычным разыменованием указателя Вызвал функцию. Если внутри нее разыменовать ptr, то рекурсия
ptr = foo2; //Указатель указывает на другую функцию
**ptr; //Вызвал функцию. Если внутри нее разыменовать ptr, то рекурсия, но уже вот текущей функции
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru