?? cmpnt3.cpp
字號:
//
// Cmpnt3.cpp - Component 3
//
#include <objbase.h>
#include "Iface.h"
#include "Util.h"
#include "CUnknown.h"
#include "Cmpnt3.h"
static inline void trace(char* msg)
{ Util::Trace("Component 3", msg, S_OK) ;}
static inline void trace(char* msg, HRESULT hr)
{ Util::Trace("Component 3", msg, hr) ;}
///////////////////////////////////////////////////////////
//
// Interface IZ
//
HRESULT __stdcall CC::FzStructIn(Point3d pt)
{
strstream sout ;
sout << "FzStructIn received ("
<< pt.x << ", "
<< pt.y << ", "
<< pt.z << ")."
<< ends ;
trace(sout.str()) ;
m_pt = pt ;
return S_OK ;
}
HRESULT __stdcall CC::FzStructOut(Point3d* pt)
{
*pt = m_pt ;
return S_OK ;
}
//
// Constructor
//
CC::CC(IUnknown* pUnknownOuter)
: CUnknown(pUnknownOuter)
{
m_pt.x = -1.0 ;
m_pt.y = -1.0 ;
m_pt.z = -1.0 ;
}
CC::~CC()
{
trace("Destroy self.") ;
}
//
// NondelegatingQueryInterface implementation
//
HRESULT __stdcall CC::NondelegatingQueryInterface(const IID& iid,
void** ppv)
{
if (iid == IID_IZ)
{
return FinishQI(static_cast<IZ*>(this), ppv) ;
}
else
{
return CUnknown::NondelegatingQueryInterface(iid, ppv) ;
}
}
///////////////////////////////////////////////////////////
//
// Creation function used by CFactory
//
HRESULT CC::CreateInstance(IUnknown* pUnknownOuter,
CUnknown** ppNewComponent)
{
*ppNewComponent = new CC(pUnknownOuter) ;
return S_OK ;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -