node C++扩展(2) 尝试翻译node官网文档

3 篇文章 0 订阅

想学习,node C++扩展方法,百度到的往往都过时了,还是直接看官网吧

看的过程中突然想将其记录下来,就算是一个尝试翻译吧,怎么理解就怎么写吧

文档路径:https://nodejs.org/api/addons.html


Hello World

我们用C++语言扩展node,完成的和以下javascript同样的功能:

module.exports.hello = function() { return 'world'; };
(很明显,就是调用hello,返回"world")

第一步,我们创建hello.cc文件:

// hello.cc
#include <node.h>

using namespace v8;

void Method(const FunctionCallbackInfo<Value>& args) {
  Isolate* isolate = Isolate::GetCurrent();
  HandleScope scope(isolate);
  args.GetReturnValue().Set(String::NewFromUtf8(isolate, "world"));
}

void init(Handle<Object> exports) {
  NODE_SET_METHOD(exports, "hello", Method);
}

NODE_MODULE(addon, init)

所有Node扩展,我们必须导出一个初始化函数:

void Initialize (Handle<Object> exports);
NODE_MODULE(module_name, Initialize)
NODE_MODULE 之后没有分号,因为它不是一个函数(请参阅 node.h


噢,原来已经有了翻译,看来不需要多此一举了,链接送上:

http://nodeapi.ucdok.com/#/api/addons.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值