나는 C++에 대해 반응적인 학습을하고 있으며 몇 가지 지침을 찾고있다. 이벤트를 기다렸다가 반환하는 함수를 만들었습니다. 나는 반응적인 비동기로 발생하는 모든 이벤트를 포착하여 그들이 올 때 처리하도록하고 싶다. 여기에 지금까지 무엇을 없다 :함수에서 RXcpp 스트림 데이터가 연속적으로
int Engine::Initialize()
{
al_init();
display = al_create_display(1200, 800);
eventQueue = al_create_event_queue();
al_install_mouse();
al_install_keyboard();
al_register_event_source(eventQueue, al_get_keyboard_event_source());
al_register_event_source(eventQueue, al_get_mouse_event_source());
//test: wait for 2 events to happen
auto events = rxcpp::observable<>::create([](rxcpp::subscriber<ALLEGRO_EVENT> e)
{
e.on_next(WaitForEvent);
e.on_next(WaitForEvent);
e.on_completed();
});
events.subscribe([](ALLEGRO_EVENT e)
{
printf("We have an Event: %d \n", e.type);
},
[]()
{
printf("Done\n");
});
return 0;
}
ALLEGRO_EVENT Engine::WaitForEvent()
{
ALLEGRO_EVENT event;
al_wait_for_event(eventQueue, &event);
return event;
}
나는 오류를 얻을 수가 : 함수 템플릿의 더 예 "rxcpp :: 관찰 :: 만들 수는"인수 목록 일치합니다. ALLEGRO_EVENT을 (를) 관찰 할 수 있도록 내 자신 만의 템플릿이나 무언가를 만들어야합니까?
에 결과를 전달해야합니다 함수 템플릿없이 인스턴스를 : : create "는 인수 목록 –
shady
ALLEGRO_EVENT
을 기대하고있다 "rxcpp :: 관찰과 일치합니다. 왜냐하면 그 문서에서 샘플을 붙여 넣을 때 같은 것을 말하기 때문입니다. – shady
흠. 그건 이상 하네. 버그 일 수 있습니다. 불행히도이 라이브러리를 사용한 경험이 없습니다. 그들의 [토론 포럼] (http://rxcpp.codeplex.com/discussions)에 게시하는 것이 좋습니다. – Tim