我想对于大多数人来说,只返回错误状态是可以的,但是对于像我这样的新手来说,我需要指向问题发生的代码中的确切行。我想我可以使用ASSERT,但那也不好玩
类似这样的
- Acad::ErrorStatus
- DatabaseTools::AddToModelSpace(AcDbEntity *pEntity, AcDbObjectId &ID, AcDbDatabase *pDb)
- {
- if(pEntity == NULL) { ISEOKRET(Acad::eNullEntityPointer); }
- Acad::ErrorStatus es;
- AcDbBlockTable *pBlockTable = NULL;
- AcDbBlockTableRecord *pBlockTableRecord = NULL;
- es = pDb->getSymbolTable(pBlockTable, AcDb::kForRead);
- ISEOKRET(es);
- es = pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRecord,AcDb::kForWrite);
- pBlockTable->close();
- ISEOKRET(es);
- es = pBlockTableRecord->appendAcDbEntity(ID, pEntity);
- ISEOKMSG(es);
- es = pEntity->close();
- ISEOKMSG(es);
- es = pBlockTableRecord->close();
- ISEOKMSG(es);
- return es;
- }
|