gpt4 book ai didi

c++ - Awesomium 1.7RC2 与 VS11

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:31:05 25 4
gpt4 key购买 nike

我有一个小问题,我不知道如何解决(很遗憾)。

我想编译 Awesomium 1.7RC2 SDK 的示例项目,它在 vs10 上运行良好,但在 vs11 上我确实遇到了一些错误。

这些是错误:

http://pastebin.com/6RdUffve

它们是由这些代码行引起的:

method_dispatcher_.Bind(app_object,
WSLit("SayHello"),
&Application::OnSayHello);
method_dispatcher_.Bind(app_object,
WSLit("Exit"),
&Application::OnExit);

method_dispatcher_.BindWithRetval(app_object,
WSLit("GetSecretMessage"),
&Application::OnGetSecretMessage);

调度器类代码:

标题:http://pastebin.com/ktTEuQ4T

来源:http://pastebin.com/FTDHQzJ9

我希望有人能帮助我:)

最佳答案

这似乎是由VS2012中的一个错误引起的,其中std::function不会隐式地将成员函数指针转换为函数指针。这个例子,根据 Bjarne Stroustroups C++11 FAQ 应该工作,在我的 VS2012 中抛出同样的错误:

struct X {
int foo(int);
};

function<int (X*, int)> f;
f = &X::foo; // pointer to member

X x;
int v = f(&x, 5); // call X::foo() for x with 5

你可以通过创建像这样的静态函数来解决这个问题

void StaticOnSayHello(Application* app, Awesomium::WebView* caller, const Awesomium::JSArray &args) {
app->OnSayHello(caller, args);
}

等等,并将它们作为 method_dispatcher::Bind 的第三个参数。

关于c++ - Awesomium 1.7RC2 与 VS11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11937908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com