12345678910111213141516171819202122232425262728293031323334353637383940 |
- // Copyright John Maddock 2007.
- // Copyright Paul A. Bristow 2010
- // Use, modification and distribution are 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)
- // Note that this file contains quickbook mark-up as well as code
- // and comments, don't change any of the special comment mark-ups!
- double some_value = 2.;
- //[policy_ref_snip3
- #include <boost/math/special_functions/gamma.hpp>
- using namespace boost::math::policies;
- using boost::math::tgamma;
- // Define a new policy *not* internally promoting RealType to double:
- typedef policy<
- promote_double<false>
- > my_policy;
-
- // Call the function, applying the new policy:
- double t1 = tgamma(some_value, my_policy());
- // Alternatively we could use helper function make_policy,
- // and concisely define everything at the call site:
- double t2 = tgamma(some_value, make_policy(promote_double<false>()));
- //] //[\policy_ref_snip3]
- #include <iostream>
- using std::cout; using std::endl;
- int main()
- {
- cout << "tgamma(some_value, my_policy()) = " << t1
- << ", tgamma(some_value, make_policy(promote_double<false>()) = " << t2 << endl;
- }
|