【发布时间】:2011-04-28 07:16:45
【问题描述】:
我试图理解这意味着什么,我正在查看的代码有
在.h中
typedef void (*MCB)();
static MCB m_process;
在.C
MCB Modes::m_process = NULL;
有时当我这样做时
m_process();
我得到分段错误,可能是因为内存被释放了,当它被释放时我该如何调试?
我希望我的问题很清楚。
【问题讨论】:
-
嘿——你说的是C还是C++?您的 .C 文件表示 C++;您的标签表示 C。请下定决心 - 这两种语言之间存在很大差异。
-
这绝对是 C++。
.C是常见的 C++ 文件扩展名,而且Modes::m_process将是无效的 C。 -
作者明确指定了标签,他要求C,并且他多次将其编辑为C。他最初是否将某些代码与其他代码混淆,是另一个讨论。答案是对的,回答一个 C sn-p。
标签: c++ typedef static-members void-pointers