小编ibn*_*mys的帖子

"Hello World"+ JS V8 + VS2010

我下载并构建了JS V8,以便在发布模式下在VS2010中使用.现在我尝试运行Hello World示例:

#include "v8.h"

int _tmain(int argc, _TCHAR* argv[])
{
    v8::HandleScope handle_scope;

    v8::Persistent<v8::Context> context = v8::Context::New();

    v8::Context::Scope context_scope(context);

    v8::Handle<v8::String> source = v8::String::New("'Hello' + ', World'");

    v8::Handle<v8::Script> script = v8::Script::Compile(source);

    v8::Handle<v8::Value> result = script->Run();

    context.Dispose();

    v8::String::AsciiValue ascii (result);

    printf ("%s\n", *ascii);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我添加了附加依赖项:

"C:\v8\build\Release\lib\preparser_lib.lib"
"C:\v8\build\Release\lib\v8_base.lib"
Run Code Online (Sandbox Code Playgroud)

当我尝试编译并运行该程序时,我遇到了一个链接错误:

1>------ Build started: Project: V8_example, Configuration: Release Win32 ------
1>LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol …
Run Code Online (Sandbox Code Playgroud)

javascript c++ embedded-v8

5
推荐指数
1
解决办法
1069
查看次数

Qt:无效使用不完整类型和前向声明

我有一些误解:

#ifndef A_H
#define A_H

#include "B.h"

class A : public B
{
    Q_OBJECT
public:
    A();
};
#endif
Run Code Online (Sandbox Code Playgroud)

A.cpp

#include "A.h"
A::A()
{
    B::ui->blancH2->setValue(2);
}
Run Code Online (Sandbox Code Playgroud)

BH

#include <QWidget>
#ifndef B_H
#define B_H

namespace Ui {
    class B;
}
class B
{
    Q_OBJECT
public:
    explicit B(QWidget *parent = 0);

public:
    Ui::B *ui;
};

#endif 
Run Code Online (Sandbox Code Playgroud)

作为编译的结果,我有下一个错误:A.cpp:在构造函数'A :: A()'中:无效使用不完整类型'class Ui :: B'Bh:'class Ui :: B'的前向声明

谁能解释为什么我有这个错误?

c++ qt

3
推荐指数
3
解决办法
2万
查看次数

标签 统计

c++ ×2

embedded-v8 ×1

javascript ×1

qt ×1