Tür, bir işlev türüdür. buna bu tür değişkenleri veya referanslar ilan edemeyeceğini, çünkü sadece kendileri türleri var
typedef int (ft)(void); // Huh? (raw function type)
typedef ft *fp; // ??? (pointer to function)
typedef int (*fp_oldstyle)(void); // Ahh... (same as fp)
Fonksiyonlar ama: Artık kadar sadece işaretçi türlerinde kullanıldığı için kullanılabilir, onunla çok tanıdık olmayabilir Genellikle kullanacağınız şey, son satırdaki bilinen sözdiziminde bildirilen işaretçilerdir. int foo(void);
, foo
ve &foo
işlevlerinin her ikisi için işaretçi olarak yorumlanır, bu nedenle "raw" işlev türü ft
'a gerek yoktur. Bununla birlikte, std::function
, std::bind
ve lambda'ları çevreleyen yeni şablon büyüsü ile şablon parametrelerinde çıplak işlev türlerini görmek artık çok daha yaygın bir şeydir.
Tamam. Yardım için teşekkürler. –