Ubuntu16.04下C++调用Python3.5程序

作者: 云计算机网 分类: 云主机 发布时间: 2017-05-29 22:10

在Ubuntu 16.04下C++调用Python3.5程序过程记录。

Python程序

#call.py
import sys
def call():
print("hello world")
if __name__ = '__main__':
call()

C++代码

#include lt;iostreamgt;
#include lt;boost/python.hppgt;
using namespace std;
using namespace boost::python;
int main()
{
Py_Initialize();
if (!Py_IsInitialize())
{
cout lt;lt; 'Fail 1' lt;lt; endl;
return -1;
}
Pyrun_SimpleString("import sys")
int argc = 1;
wchar_t argv[1]; //python2使用char,与python3有区别
argv[0] = L"/home/tyl/code/call.py";
PySys_setArgv(argc,argv);
if (PyRun_SimpleString("exec(open('/home/tyl/code/call.py').read())"))
{
cout lt;lt; "Fail 2" lt;lt;endl;
return -1;
}
Py_Finalize();
return 0;
}

CMakeLists文件

cmake_minimum_required(VERSION 2.6)
project(test)
set (CMAKE_BUILD_TYPE Debug)

find_package(Boost COMPONENTS thread serialization python REQUIRED)

include_directories(${Boost_INCLUDE_DIR}
/usr/include/python3.5)
add_executable(test main.cpp)
target_link_libraries(test
${Boost_LIBRARIES}
/usr/lib/x86_64-linux-gnu/libboost_python-py35.so
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libpython3.5m.so
)
install(TARGETS test RUNTIME DESTINATION bin)

  •   

    Windows操作系统在移动端的衰落是众所周知的,但是它究竟衰落到怎样一个程度,或许许多人并没有一个具体的概念。

      上周,市场调查机构 Strategy Analytics 公布了一份2016年第3季度全球智能手机调查报告。

    报告显示,在这一季度全球的智能手机总出货量达到 3.75 亿台,同比增长了 6%。

    其中 Android 系统占到 87.5% 的份额,iOS 占到 12.1%,而曾经的第三大移动操作系统 Windows Phone 被归入others类目,整体占到 0.3%,已经看不出 Windows Phone 单独的份额。

      与出货份额少到可以忽略相对应,随着用户数的进一步减少,目前各大第三方的移动应用开发商也已经逐渐放弃了 Windows Phone 平台。

      近日,英国 TSB 银行在其官方网站上公开宣布,将从即日起停止更新和维护其 Windows Phone 平台的应用,并推荐 Windows Phone 用户转向网页端体验银行的各项移动服务。

    TSB 在官网上写到:面向 Blackberry 和 Windows 手机系统的 TSB 的移动银行应用将不再继续使用和下载。

    不过用户依然能通过移动端浏览器访问 tsb.co.uk 来获得更有友好的移动体验。

      而 TSB 银行显然不是第一个这么做的厂商,也不会是最后一个。

    此前已经有 Paypal、eBay 和亚马逊等知名公司在 Windows Phone 平台下架或停止更新了自家的官方客户端。

    此外,在知名社区 Reddit 上,用户反馈包括 Halifax、Bank of Scotland 以及 Lloyds 在内的多家国外银行也都已经宣布停止支持 Windows Phone 平台,部分已经从应用商店中移除。

      在 10 月底的发布会之前,曾有媒体预测微软很可能会发布旗下的第一部 Surface Phone 手机,并从这部手机开始逐渐挽回颓势,同时也有许多微软的铁杆粉丝表达了对这款手机的期待。#p#分页标题#e#

    但事实上微软只发布了全新的笔记本和一体机,对手机只字未提。

    (今天还有报道证实了此前关于 Surface Phone 的谍照其实是一款戴尔的原型机)

      关于这一点,微软的 CEO Satya Nadella 日前在接受媒体采访时发表了自己的看法。

    他称微软将继续关注于移动平台,但不是按照传统的模式。

    他说:现在手机这样的设备已经十分普遍,而我们所关注的是我们的手机能干什么?举例来说,我们的愿景是能手机能取代 PC,同样平板取代用户的笔记本电脑。

    我们想开发这种类型的设备。

    我们需要新的外观,新的功能,并为其赋予新的价值。

      按照 Satya Nadella 的说法,有一种可能性是:未来我们或许看不到想象中的 Surface Phone,而是一部运行着 Win 10 的介于手机、平板或者 PC 之间的全新的移动设备。

    并且,从微软最新发布的介于平板和一体机之间的全新设备 Surface Studio 来看,关于这一点的可能性非常大。

      不过,从当前 Windows Phone 平台出货量持续走低、开发者一再退出的实际情况看,即使微软将来真的推出了这么一款具有融合性的移动设备,但这款设备是否会走上 Lumia 系列的老路,也很难说。

  • 相关推荐:

  • WindowsPhone份额继续下滑微
  • 统计数据显示:WindowsP
  • 以子之矛攻子之盾?Wi
  • 微软小冰正在下一盘很大
  • 什么情况下需要考虑租用
  • 双线服务器租用
  • 下载站的服务器租用如何
  • 在什么情况下才需要选择
  • CTO下午茶:自动化是人类
  • 新华三U
  • 网站内容禁止违规转载,转载授权联系中国云计算网