bind_function_tests.cpp
来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 58 行
CPP
58 行
/*============================================================================= Copyright (c) 2001-2007 Joel de Guzman Distributed under 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)==============================================================================*/#include <iostream>#include <cmath>#include <boost/detail/lightweight_test.hpp>#include <boost/spirit/include/phoenix_core.hpp>#include <boost/spirit/include/phoenix_operator.hpp>#include <boost/spirit/include/phoenix_bind.hpp>using namespace boost::phoenix;using namespace boost::phoenix::arg_names;using namespace std;namespace test{ void test() { cout << "Test binding functions...\n"; } int negate(int n) { return -n; } int plus(int a, int b) { return a + b; } int plus4(int a, int b, int c, int d) { return a + b + c + d; }}intmain(){ int a = 123; int b = 256; bind(test::test)(); BOOST_TEST(bind(test::negate, arg1)(a) == -a); BOOST_TEST(bind(test::plus, arg1, arg2)(a, b) == a+b); BOOST_TEST(bind(test::plus4, arg1, arg2, 3, 4)(a, b) == a+b+3+4); return boost::report_errors();}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?