указатель на присваивание функции

Почему присваивание без '&' компилируется в следующем коде? Я скомпилировал код с GCC 3.4.6. Правильно ли присваивать без '&', или это "особенность" GCC?

void func() {
}

int main() {
  typedef void (*F)();

  F f;
  f = &func; // the way of assigning pointer to function.
  f = func;  // this is also working.

  (*f)();

  return 0;
}
5
задан MKo 30 August 2011 в 15:36
поделиться