错误C3918:错误检查事件是否为nullptr

时间:2011-05-17 17:28:47

标签: .net events delegates c++-cli

我的.h文件中有委托和事件

delegate void ResponseReceivedHandler(System::Object^ sender, WhoisEventArgs^ e);
event ResponseReceivedHandler^ ResponseReceived; 

我的代码中的某个地方我想检查事件是nullptr还是没有,但是当我写

已编辑:

if (this->ResponseReceived != nullptr)
{
     this->ResponseReceived(this, e);
}

发生错误

  

错误1错误C3918:使用需要   'VT :: WhoisClient :: WhoisRequest :: ResponseReceived'   成为一个数据   成员c:\ Users \ ViToBrothers \ Desktop \ ViTo   Projects \ VT.WhoisClient \ VT.WhoisClient \ VT.WhoisRequest.cpp 50

我该怎么办?

1 个答案:

答案 0 :(得分:3)

我相信在这种情况下,编译器正在为事件处理程序委托生成访问器函数和后备存储。因此,您无需检查空值。

在此处查看更多内容:http://msdn.microsoft.com/en-us/library/4b612y2s.aspx