Форум программистов, компьютерный форум CyberForum.ru

Указатель на функцию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Пользователь вводит месяц - компьютер показывает количество дней в этом месяце http://www.cyberforum.ru/cpp-beginners/thread316428.html
Надо сделать программу: пользователь с клавиатуры вводит по русски название месяца, а компьютер выводит количество дней в этом месяце. Год считать високосным.
C++ написать функцию, которая формирует новый массив, элементами которого является все четные элементы, расположенные в нечетных ячейках заданного массива Помогите пожалуйста.написать функцию, которая формирует новый массив, элементами которого является все четные элементы, расположенные в нечетных ячейках заданного массива. http://www.cyberforum.ru/cpp-beginners/thread316421.html
C++ Массивы
Дан массив, состоящий из 100 целых чисел. а) Вывести все числа, которые встречаются в" этом массиве несколько раз. б) Вывести все числа, которые встречаются в массиве только по одному разу. Плз решите я ваще немогу решить.:cry:Нужно сделать код на Си
класс Матрица C++
Здраствуйте! Наведите пример нормальной реализации класса Матрицы так чтоб можно было считывать матрицу с файла при том что в файле м последний столбец нужно сделать как отдельную матрицу. Желательно шаблоном, и методом для решения слау методом Жордана-Гауса, но подойдет все, любые подсказки, идеи, мысли. Заранее спасибо) Я много искал на форуме но не нашел ничего предельно внятного.
C++ Циклы http://www.cyberforum.ru/cpp-beginners/thread316405.html
Пожалуйста помогите с тремя задачками. 1)Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N-1, у которых произведение всех цифр совпадает с суммой цифр данного числа. Если таких чисел нет, то вывести слово "нет". Пример N=44 Числа: 18,24 2)Среди четырхзначных числе из интервала, заданного пользователем, найти все, у которых произведение первых двух цифр равно сумме...
C++ Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей.Подсчитать количество локальных минимумов ... Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей.Подсчитать количество локальных минимумов заданной матрицы размером 10х10. Найти сумму моделей элементов, расположенных выше главной диагонали. Буду очень благодарен за помостчь) забыл язык полностью((( подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
09.06.2011, 11:12     Указатель на функцию
Цитата Сообщение от bearwoolfs Посмотреть сообщение
Понятно , но ничего не понятно , тогда для чего используеться Указатель на функцию ??? Если он туда ничего передать не может. Яправильно понял?
Нельзя ввести с клавиатуры, но это ещё ничего не значит. Вот представь себе: у тебя 1000 функций, в 1000 местах ты в зависимости от каких то условий хочешь вызывать эти функции по одной, а в других частях программы запоминать, что именно потом вызовешь. Тебе понадобаится 1000 swichей по 1000 caseов, итого миллион caseов. А с помощью указаетеля можно обойтись всего лишь тысячью строк вида
C++
1
PointToFucntion(x, y);
, где PointToFucntion - твой указатель. Теперь представь: ты потом передумал и функций стало 2000. В первом случае ты добавишь ещё миллион caseов, а во втором добавляются только сами функции и запоминание того, какую из них действительно надо вызывать, сам же вызов не трогаешь вовсе, что в равной мерее удобно и при замене тысячи функций на две тысячи, вызываемых в тысяче мест, и при замене двух функций на три, вызываемых в одном месте.

Добавлено через 5 минут
Цитата Сообщение от OstapBender Посмотреть сообщение
указатели на функции находят широкое применение в качестве параметров других функций
Можно передавать имена, а внутри писать длинные последовательности альтернатив, или передавать номера, а внутри писать длинные switchи. Указатель же на функцию оказывается удобнее этих решений в том случае, если вызов повторяется в разных частях программы, и/или переделывается.

Добавлено через 2 минуты
Цитата Сообщение от taras atavin Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
funtion f1(i:integer):integer;
function f2(i:integer):integer;
begin
 f2:=i*2;
end;
 f1:=f2(i)*f2(i mod 4);
end;
Очепятки.
Pascal
1
2
3
4
5
6
7
8
funсtion f1(i:integer):integer;
function f2(i:integer):integer;
begin
       f2:=i*2;
end;
begin
     f1:=f2(i)*f2(i mod 4);
end;
 
Текущее время: 05:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru