C++ では、次の選択肢が与えられます。
void fun(int arg1, int arg2opt = 0);
// vs.
void fun(int arg1, int arg2);
void fun(int arg1) {
fun(arg1, 0);
}
この関数を使用したいユーザー コードに違いはありますか? (オーバーロードの解決? 名前の参照?関数ポインターへの代入fun
?テンプレート ( std::function
) での使用? ...)
それとも、これらは意味的に同じですか?(ここに私が知っているいくつかの詳細があり、この質問には関係ありません)