i wonder what is the difference between these 2 functions( fun and fun2 ) I know that fun2 is function pointer but what with fun ? Is that the same because there is also passing by pointer which is function name ?
#include <iostream>
void print()
{
  std::cout << "print()" << std::endl;
}
void fun(void cast())
{
  cast();
}
void fun2(void(*cast)())
{
  cast();
}
int main(){
  fun(print);
  fun2(print);
} 
 
     
    