hRes = pATLEnum->GetEnum( (IUnknown**) &pEnumVar ) ;
ULONG nReturned = 0 ;
VARIANT arrVar[nBatchSize] = { 0 } ;
pEnumVar->Next(nBatchSize, &arrVar[0], &nReturned) ;
pEnumVar->Release() ;
pATLEnum->Release() ;
CoUninitialize();
return 0;
}
执行完pEnumVar->Next(nBatchSize, &arrVar[0], &nReturned) ;这一条语句,可以从调试窗口看到如下结果:

图 ATLEnum - 05
变量nReturned = 2说明该枚举器取回了2个数据,展开arrVar数组的显示,可以看到枚举器接口正确地实现了Next()方法,将两个VARIANT数据传递给了客户端代码。