かつての#pragma
テンプレート<typenameにT>
クラスsmart_pointer
{
プライベート:
T * m_pRawPointer。
公共:
smart_pointer(T * pDataを):m_pRawPointer(pDataを){}
//コンストラクタコピー
smart_pointer(のconst smart_pointer&anotherSPを)。
//赋值
smart_pointer&演算子=(CONST smart_pointer&anotherSP)。
//
T&演算子*()constは
{
リターン*(m_pRawPointer)。
}
T * operator->()constは
{
m_pRawPointerを返します。
}
}。