グーグルでしばらく時間を費やしましたが、実際には何も見つかりませんでした。私はこれを行うことができるようにしたい:
std::tr1::function<void()> foo(SOME_DEFAULT_FUNCTION_THAT_DOES_NOTHING);
//
//Some code that could possibly assign foo
//
foo();
そうでなければ、私はこれをしなければなりません:
std::tr1::function<void()> foo;
//
//Some code that could possibly assign foo
//
if(foo)
{
foo();
}
何もしない関数を作成できることはわかっていますが、関数にnullオブジェクトパターンの値が与えられたかどうかを確認するためのチェックを処理する必要がない標準的な方法を探しています。