我正在完成一个用C ++修复node.js'addon的任务,我不知道C ++,但我可以理解一般的上下文。 阅读代码,下面的代码,对我来说没有意义:
Nan::Utf8String clientIP(clientIPV8.ToLocalChecked());
params["clientIP"] = *clientIP;
clientIP是什么意思? 什么意思* clientIP?
我没有在任何地方声明这个“功能”。代码有多个出现等于这个,但“函数”名称已更改。例如:
Nan::Utf8String clientPort(clientPortV8.ToLocalChecked());
params["clientPort"] = *clientPort;
由于
答案 0 :(得分:0)
clientIP
是Nan::Utf8String
类型的变量,已初始化为clientIPV8.ToLocalChecked()
*
用于取消引用指针变量,即包含内存地址值的变量,因此它应返回clientIP
指向的任何值。但它也可能是一个过载的operator*
。所有运算符都可以在C ++中重载,就像任何其他函数一样,并且如注释中所提到的,在这种情况下它会被重载以返回由Nan::Utf8String
包装的char *。