1、对象打开后,当操作完成时,不在使用对象时,控件要求必须关闭对象,关闭对象调用 McDbObject::close() 函数,像这样调用: pObject->close();
2、因为有这样的要求,便常常在使用控件过程中,很容易忘记关闭对象,建议使用智能指针的方式打开对象,而对象的关闭会在智能指针释放的时候自动调用。
3、智能针指的使用例如:
(1)打开一个实体:
McDbObjectPointer<McDbEntity> spEnt(id,McDb::kForRead);
if(spEnt.openStatus() != Mcad::eOk)
continue;
(2)打开当前数据库中的模型空间:
McDbBlockTableRecordPointer spBlkTabRec(MCDB_MODEL_SPACE,
McDbCurDwg(),McDb::kForRead);
if(spBlkTabRec.openStatus() != Mcad::eOk)
{
return retId;
}