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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
#1

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

11.03.2013, 00:39. Просмотров 266. Ответов 6
Метки нет (Все метки)

Доброго времени суток! Вот читал про указатели на функцию, и столкнулся с такой проблемой... Допустим, есть такой код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "stdafx.h"
#include <iostream>
using namespace std;
 
void print(const char *temp)
{
    wcout << temp;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    void (*func)(const char *);
    func = &print;
 
    (*func)("Hello world!");                                            //вызов функции через указатель
 
    return 0;
}
и все прекрасно работает, но есть и такой код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "stdafx.h"
#include <iostream>
using namespace std;
 
void print(const char *temp)
{
    wcout << temp;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    void (*func)(const char *);
    func = &print;
 
    func("Hello world!");                                            
 
    return 0;
}
и тут все прекрасно работает, но первый пример я нашел у Страуступа... так а зачем делать так явно, если можно просто как во втором случае... не могу понять... заранее благодарю!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2013, 00:39     указатели на функцию
Посмотрите здесь:

Указатели на функцию - C++
1. arcsin(x^3) bool arcs(double *x) { if (*x**x**x&lt;=1 &amp;&amp; *x**x**x&gt;=-1) {*x=asin(*x**x**x); return true;} } правильно я...

Указатели на функцию - C++
Используя указатели на функцию вычислить значение функции в точке х в соответствии с выбором функции пользователем. При невозможности...

указатели на функцию - C++
помогите пожалуйста решить k!/(1/2+1/3+...+1/(k+1)) используя указатели на функцию вот до чего я дошла #include &quot;stdafx.h&quot; #include...

Указатели на функцию, операции .* и ->* - C++
Закомментируйте пожалуйста код в тех местах где пометил , что то запутался. class A { public: void f() { ...

Ссылки и указатели на функцию - C++
Если передавать значение в функцию через указатель и ссылку,то в обоих случаях передаётся адрес,а не значение? И ещё: int *...

Реализовать функцию, сравнивающую указатели - C++
реализовать функцию, которая принимает на вход два указателя на базовый класс Expression, и возвращает true, если оба указателя указывают...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.03.2013, 00:45     указатели на функцию #2
http://stackoverflow.com/questions/7...-dereferencing

How does dereferencing of a function pointer happen?
kravam
быдлокодер
1691 / 878 / 44
Регистрация: 04.06.2008
Сообщений: 5,420
11.03.2013, 02:16     указатели на функцию #3
yoghurt92, понял что-нибудь?
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
11.03.2013, 02:20  [ТС]     указатели на функцию #4
kravam, так себе...
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.03.2013, 02:22     указатели на функцию #5

Не по теме:

Цитата Сообщение от kravam Посмотреть сообщение
понял что-нибудь?
для тех кому так важно "самокопание" - "дизайн и эволюция с++"


Цитата Сообщение от yoghurt92 Посмотреть сообщение
так себе...
если коротко - то для совместимости с Си
kravam
быдлокодер
1691 / 878 / 44
Регистрация: 04.06.2008
Сообщений: 5,420
11.03.2013, 02:53     указатели на функцию #6
Цитата Сообщение от yoghurt92 Посмотреть сообщение
kravam, так себе...
вот и я не понял.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2013, 21:09     указатели на функцию
Еще ссылки по теме:

Передача массива в функцию (указатели) - C++
Возникла проблема. Написала программу решение систем линейных уравнений методом Гаусса. В студии 12 года работает правильно, а в 13 нет;...

Передача в функцию через указатели - C++
Компилятор говорит, что что-то не так с передачей max и min. Что? #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; ...

Указатели на передаваемые двумерные массивы в функцию - C++
Доброго времени суток) Вчера озадачился новым. В недавнем времени перешел на vs 2013 и тут при написании ф-ии решил передать в нее массив...

Указатели - разобрать функцию, принимающую параметр - C++
Есть функция: void handling(char **_names, bool *voarr, int pos){ char **names=new char*; for(int j=0; j&lt;N; ++j){ ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
11.03.2013, 21:09  [ТС]     указатели на функцию #7
Jupiter, а можно не коротко но и не сильно много, я не особо владею английским, буду очень признателен!
Yandex
Объявления
11.03.2013, 21:09     указатели на функцию
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru