我正在尝试在NodeJS插件中使用ToCString。
String::Utf8Value foo_utf8(args[0]->ToString());
const char *foo = ToCString(foo_utf8);
我找不到它的标题,如果我手动将其原型(prototype)化为:
const char* ToCString(const v8::String::Utf8Value& value);
然后我得到一个运行时错误:
node: symbol lookup error: /home/chris/Dropbox/cbackend/build/Release/cbackend.node:
undefined symbol: _Z9ToCStringRKN2v86String9Utf8ValueE
如何将V8字符串参数转换为以空值终止的8位C字符串?
最佳答案
我发现了一种解决方法,因为ToCString函数(无论位于何处)都是微不足道的。只需添加:
const char* ToCString(const v8::String::Utf8Value& value) {
return *value ? *value : "<string conversion failed>";
}
关于c++ - ToCString的头在哪里,或者如何将参数转换为cstrings?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11190410/