- 授权协议: Apache-2.0
- 开发语言: C/C++
- 操作系统: 跨平台
- 软件首页: https://github.com/CopernicaMarketingSoftware/REACT-CPP
- 软件文档: https://github.com/CopernicaMarketingSoftware/REACT-CPP/blob/master/README.md
- 官方下载: https://github.com/CopernicaMarketingSoftware/REACT-CPP/releases
软件介绍
REACT-CPP 是利用 C++ 11 的 lambda 表达式在文件描述符或定时器激活的时候进行通知的事件循环库。在它内部实质是对 libev 库的包装,因此也依赖于该库。
在一个典型的应用程序中,你创建了一个 mainloop 类的实例,然后注册你想要查看的 filedescriptors,注册事件处理程序和计时器:
#include <reactcpp.h>
#include <unistd.h>
#include <iostream>
/**
* Main application procedure
* @return int
*/
int main()
{
// create an event loop
React::MainLoop loop;
// set a timer to stop the application after five seconds
loop.onTimeout(5.0, []() {
// report that the timer expired
std::cout << "timer expired" << std::endl;
// stop the application
exit(0);
});
// we'd like to be notified when input is available on stdin
loop.onReadable(STDIN_FILENO, []() -> bool {
// read input
std::string buffer;
std::cin >> buffer;
// show what we read
std::cout << buffer << std::endl;
// return true, so that we also return future read events
return true;
});
// handler when control+c is pressed
loop.onSignal(SIGINT, []() -> bool {
// report that we got a signal
std::cout << "control+c detected" << std::endl;
// stop the application
exit(0);
// although this code is unreachable, we return false because
// we're no longer interested in future SIGINT signals
return false;
});
// run the event loop
loop.run();
// done
return 0;
}
Effective Objective-C 2.0
Matt Galloway / 爱飞翔 / 机械工业出版社 / 2014-1 / 69.00元
《effective objective-c 2.0:编写高质量ios与os x代码的52个有效方法》是世界级c++开发大师scott meyers亲自担当顾问编辑的“effective software development series”系列丛书中的新作,amazon全五星评价。从语法、接口与api设计、内存管理、框架等7大方面总结和探讨了objective-c编程中52个鲜为人知和容易被忽......一起来看看 《Effective Objective-C 2.0》 这本书的介绍吧!
