如何在 Awesomium 中设置侦听器?( "Field type 'Listener' is an abstract class"错误)
How do I set a listener in Awesomium? ("Field type 'Listener' is an abstract class" error)
我一直试图获得一个Awesomium::WebViewListener工作,但每当我试图分配Listener对象时,我得到一个"字段类型'Listener'是一个抽象类"错误。
下面是我的代码:
class Listener : public Awesomium::WebViewListener
{
public:
void onCallback(Awesomium::WebView* caller,
const std::wstring& objectName,
const std::wstring& callbackName,
const Awesomium::JSArguments& args)
{
std::cout << "Hello!" << std::endl;
}
};
// In the GUI class
Listener listener; // Field type 'Listener' is an abstract class
view->setListener(&listener);
如果我不能分配侦听器对象,我该如何设置侦听器?我试过使用boost::shared_ptr,它不会产生任何错误,但onCallback()函数永远不会被调用。
可以有两种形式:
-
Awesomium::WebViewListener
包含多个抽象方法。如果是这样,您应该实现它们来创建派生类' Listener'的实例。我说过了) -
Awesomium::WebViewListener::onCallback
参数列表应该与您的参数列表完全相等。如果没有,则将此方法添加到Listener
,但不实现基础抽象onCallback
相关文章:
- Why is UINT32_MAX + 1 = 0?
- C++错误:"error: int aaa::bbb is protected within this context"
- 使用可变模板的Broadcaster/Listener模式
- 创建具有 new in 函数和"this is nullptr"异常的对象
- 使用 cmake 的 Linux 终端上的"Conversion to non-scalar type is requested"错误
- Is !NaN not a NaN?
- Directx 11 - CompileFromFile() is not compiling
- Centos7 g++ "to_string is not in a member of std"
- "Unable to start debugging. No process is associated with this object." - 在Visual Studio Code中使用GDB
- Where is std::hardware_destructive_interference_size?
- Casablanca/cpprestsdk listener.support接受函数,但不支持方法
- 将成员函数作为构造函数参数调用时出错 "Variable is not a type name"
- What is unordered_set in C++
- 你如何理解"std: :forward is just syntactic sugar"?这是真的吗?
- C++ "error: use of overloaded operator '*' is ambiguous"似乎只有一场比赛
- C++ is calculating wrong
- Is it good to use SDL_PIXELFORMAT_UNKNOWN?
- reference_wrapper导致"incomplete type is not allowed"
- 为什么即使在定义之后仍存在"Identifier is undefined error "?
- 如何在 Awesomium 中设置侦听器?( "Field type 'Listener' is an abstract class"错误)