オーバーロードについて質問

int Func(int a=NULL);
string Func(string a="");

こんな感じで引数が無い場合に戻り値の型によって
関数がオーバーロードされるのを期待してみましたが
コンパイルエラーが出てしまいました

このような場合関数名を変えるしか無いのでしょうか?