Re[3]: Использование двойного указателя на функцию.
От: Павел Кузнецов  
Дата: 07.10.04 23:52
Оценка:
Zh0rzh:

> Так а почему тогда для обычного указателя не надо выделять память.

> Рабочий код.
>
> int (*func)(int, int);
> func = &summ;
>


Потому что она уже выделена компилятором. В этом смысле указатель аналогичен, скажем, целому типу:
int i;
i = 10; // все хорошо, память выделять не надо


int* p;
p[0] = 10; // все плохо, запись в не выделенную память


Возможно, всё станет еще чуть-чуть яснее, если для указателя на функцию завести typedef:
typedef int (*Func)(int, int);


Func f;
f = &summ; // все хорошо


Func* f;
f[0] = &summ; // все плохо, индексирование неинициализированного указателя
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.