factorial2.cpp

来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 33 行

CPP
33
字号
// Copyright (C) 2001-2003// William E. Kempf////  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 <boost/thread/thread.hpp>#include <boost/ref.hpp>#include <iostream>class factorial{public:    factorial(int x) : x(x), res(0) { }    void operator()() { res = calculate(x); }    int result() const { return res; }private:    int calculate(int x) { return x <= 1 ? 1 : x * calculate(x-1); }private:    int x;    int res;};int main(){    factorial f(10);    boost::thread thrd(boost::ref(f));    thrd.join();    std::cout << "10! = " << f.result() << std::endl;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?