国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

用C++編寫擴展node.js(node-ffi版)

2020-01-26 13:37:06
字體:
來源:轉載
供稿:網友

用C++擴展node.js(node-ffi版)

0.先安裝node.js和python(2.7)。請參考:

https://nodejs.org/
https://www.python.org

1.新建一個demo項目: 創建demo目錄,并進入其中,然后運行下面命令。

mkdir democd demonpm init

運行npm init時,之后會生成一個package.json(具體內容與輸入參數有關):

{ "name": "demo", "version": "1.0.0", "description": "a demo for node call native functions", "main": "demo.js", "scripts": {  "test": "echo /"Error: no test specified/" && exit 1" }, "keywords": [  "node" ], "author": "Li XianJing", "license": "ISC"}

2.安裝編譯工具和頭文件。

sudo npm install -g node-gypnpm install ffi bindings --save

3.用C++編寫原生代碼( 為了讓目錄結構整潔一點,我們把代碼放到native只目錄下)。

下面的文件(native/demo.cc),添加一個Add方法,計算兩個數之和:

double Add(double a, double b) {  return a+b;}

4.寫一個Makefile(native/Makefile), 用來編譯C++代碼。

all:  $(CC) -g -shared demo.c -o libdemo.dylibclean:  rm -frv libdemo*

5.編寫一個JS文件(demo.js)),讓它調用原生代碼。

var ffi = require('ffi');var demo = ffi.Library('./native/libdemo', { 'Add': [ 'double', [ 'double', 'double'] ]});console.log(demo.Add(12345, 54321));

7.編譯C++程序。

make -C native

8.運行JS代碼,看看是否工作。

node demo.js

參考:

node-ffi

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。如果你想了解更多相關內容請查看下面相關鏈接

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白城市| 兰溪市| 富川| 玛多县| 保定市| 安新县| 涿鹿县| 闽清县| 桂阳县| 时尚| 蓬莱市| 方城县| 从化市| 嘉兴市| 临安市| 南昌市| 永顺县| 张家川| 比如县| 年辖:市辖区| 定襄县| 徐闻县| 乌鲁木齐县| 汉沽区| 安福县| 开阳县| 都匀市| 波密县| 海原县| 克拉玛依市| 南皮县| 深州市| 思南县| 淮南市| 武平县| 镇巴县| 太原市| 承德市| 油尖旺区| 关岭| 友谊县|