diff options
Diffstat (limited to 'src/boost/libs/function/example/bind1st.cpp')
-rw-r--r-- | src/boost/libs/function/example/bind1st.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/boost/libs/function/example/bind1st.cpp b/src/boost/libs/function/example/bind1st.cpp new file mode 100644 index 00000000..b9622c7f --- /dev/null +++ b/src/boost/libs/function/example/bind1st.cpp @@ -0,0 +1,32 @@ +// Boost.Function library examples + +// Copyright Douglas Gregor 2001-2003. Use, modification and +// distribution is subject to the Boost Software License, Version +// 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +// For more information, see http://www.boost.org + +#include <iostream> +#include <boost/function.hpp> +#include <functional> + +struct X { + X(int val) : value(val) {} + + int foo(int x) { return x * value; } + + int value; +}; + + +int +main() +{ + boost::function<int (int)> f; + X x(7); + f = std::bind1st(std::mem_fun(&X::foo), &x); + + std::cout << f(5) << std::endl; // Call x.foo(5) + return 0; +} |