我正在使用C ++ 11在OS X上编写网络程序。当我尝试调用kevent
函数时,我发现它与kevent
冲突的结构即可。我该怎么办?
我想调用kevent
函数来等待事件,而不是调用kevent
struct 的构造函数。
更新
我从Constructor of class with conflicting name
中读到了答案将括号添加到kevent
后,它将成为类型转换表达式。
我想打电话给功能
这是我的代码
kevent(event_loop_fd_, change_list.data(), 1, event_list.data(), 1, NULL, &timeout_struct)
答案 0 :(得分:0)
您似乎使用了错误的签名。在你上面的调用中你传递了7个参数,但kevent函数需要6个。有一个名为kevent64的函数,它有7个参数,最后一个是const struct timespec*
- 也许这是你要调用的函数?