我正在尝试在 C++ (Linux) 中的一个套接字中添加一个套接字过滤器。在套接字过滤器中,我需要获取嵌套在另一个结构中的struct fork_proc_event的偏移量。定义如下所示(cn_proc.h):
结构 proc_event {
...
联合{
...
结构 fork_proc_event {
__kernel_pid_t parent_pid;
...
} 叉子;
...
} 事件数据;
...
};
在 CI 中会这样做:
int off = offsetof(struct fork_proc_event, parent_pid);
但是我正在用 C++ 开发。如果我尝试这样做:
int off = offsetof(proc_event::fork_proc_event, parent_pid);
我收到以下错误:
错误:预期的类型说明符 错误:预期的“,” 错误:在 ',' 标记之前应为 `)'
offsetof() 线应该如何?