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

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

c++編寫node的addon(3) --向addon傳參

2019-11-08 20:18:40
字體:
來源:轉載
供稿:網友

1.環境

Ubuntu 14.04

node 4.5.0

node-gyp 3.4.0

2.項目

新建項目,加入組件nan和bindings

方法一、在項目文件的node_modules中復制組件nan和bindings的全部代碼包;

方法二、在package.json的dependencies中加入這兩個組件,用nmp安裝

3.c++源碼

//addon.cc#include <nan.h>void Add(const Nan::FunctionCallbackInfo<v8::Value>& info) {  if (info.Length() < 2) {    Nan::ThrowTypeError("Wrong number of arguments");    return;  }  if (!info[0]->IsNumber() || !info[1]->IsNumber()) {    Nan::ThrowTypeError("Wrong arguments");    return;  }  double arg0 = info[0]->NumberValue();  double arg1 = info[1]->NumberValue();  v8::Local<v8::Number> num = Nan::New(arg0 + arg1);  info.GetReturnValue().Set(num);}void Init(v8::Local<v8::Object> exports) {  exports->Set(Nan::New("add").ToLocalChecked(),               Nan::New<v8::FunctionTemplate>(Add)->GetFunction());}NODE_MODULE(addon, Init)4.binding.gyp

{  "targets": [    {      "target_name": "addon",      "sources": [ "addon.cc" ],      "include_dirs": [        "<!(node -e /"require('nan')/")"      ]    }  ]}5.js源碼

//addon.jsvar addon = require('bindings')('addon.node')console.log('This should be eight:', addon.add(3, 5))6.編譯addon

cd到源碼目錄下

node-gyp configure build 7.執行

cd 到源碼目錄下

node hello.js  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 剑川县| 杭锦后旗| 曲麻莱县| 原平市| 大厂| 綦江县| 亳州市| 宜兰县| 吐鲁番市| 望奎县| 塔河县| 延吉市| 甘孜县| 大方县| 洛宁县| 金华市| 北京市| 璧山县| 沁水县| 吉首市| 松江区| 宜章县| 长顺县| 和政县| 丹阳市| 武胜县| 张家口市| 邵东县| 凤冈县| 息烽县| 嘉鱼县| 凤山县| 安溪县| 福建省| 白河县| 深州市| 桂林市| 江孜县| 和平区| 台东县| 宜兴市|