getting_started2.cpp

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

CPP
42
字号
// Copyright Ralf W. Grosse-Kunstleve 2002-2004. 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/python/class.hpp>#include <boost/python/module.hpp>#include <boost/python/def.hpp>#include <iostream>#include <string>namespace { // Avoid cluttering the global namespace.  // A friendly class.  class hello  {    public:      hello(const std::string& country) { this->country = country; }      std::string greet() const { return "Hello from " + country; }    private:      std::string country;  };  // A function taking a hello object as an argument.  std::string invite(const hello& w) {    return w.greet() + "! Please come soon!";  }}BOOST_PYTHON_MODULE(getting_started2){    using namespace boost::python;    class_<hello>("hello", init<std::string>())        // Add a regular member function.        .def("greet", &hello::greet)        // Add invite() as a member of hello!        .def("invite", invite)        ;        // Also add invite() as a regular function to the module.    def("invite", invite);}

⌨️ 快捷键说明

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