Контрольная работа: Распределенная обработка данных
// Клиент запрашивает интерфейс IUnknown
*ppv = static_cast<IX*>(this) ;
}
else if (iid ==IID_IX)
{
// Клиент запрашивает интерфейс IX
*ppv = static_cast<IX*>(this) ;
}
else if (iid ==IID_IY)
{
// Клиент запрашивает интерфейс IY
*ppv = static_cast<IY*>(this) ;
}
else
{
// Мы не поддерживаем запрашиваемый клиентом интерфейс.
// Установить возвращаемый указатель в NULL.
*ppv = NULL ;
return E_NOINTERFACE ;
}
static_cast< IUnknown*>(*ppv)->AddRef( ) ;
return S_OK ;
}
Текст программы:
#include "stdafx.h"
#include "iostream.h"
#include "objbase.h"
#include "conio.h"