Posso redefinir uma função ou verificar se ela exist

Eu tenho uma pergunta sobre (re) definir funções. Meu objetivo é ter um script onde eu possa escolher definir uma função ou não. Como isso

void func(){}

int main(){
   if (func)func();
}

AND sem a função, apenas:

int main(){
   if (func)func();
}

Alguém tem uma idei