我正在尝试将v8嵌入到我的应用程序中,弄乱了看v8环境中包含的内容(duktape不包含控制台实现),但是看起来v8确实包含了一个实现,但是当我调用{{1 }}它不打印任何内容,而是仅打印未定义的内容(我假设它是console.log
的返回值),那么如何将默认的console.log
输出与std::cout
链接起来呢
这是我目前的代码,我正在使用默认的hello world代码进行稍微修改。
console.log
我正在使用预构建的v8二进制文件here
答案 0 :(得分:3)
尝试以下操作:
#include "src/debug/interface-types.h"
debug::ConsoleDelegate
void Log(const debug::ConsoleCallArguments& args, const v8::debug::ConsoleContext&) override;
debug::SetConsoleDelegate(isolate, &your_console_delegate);
后致电Isolate
要查看示例,请从https://cs.chromium.org/chromium/src/v8/src/d8/d8-console.h?l=14&gsn=D8Console开始并跟踪其使用位置。
答案 1 :(得分:0)
因此,对于将来要处理此问题的任何人,这就是我用来修复它的过程。
src
文件夹中,因为否则它的包含内容将无法使用v8/src
和v8
builtins-generated/bytecodes-builtins-list.h