符号表:
![](https://img-blog.csdn.net/20160801101717180)
每一个符号表对象都提供getAt函数来获取指定名称记录。
Acad::ErrorStatus getAt(const char*pEntryName, 需要获取对象的名称
AcDb::OpenMode mode, 打开方式
XXXTableRecord* &pRecord, 获取的表记录对象
Adesk::Boolean openErasedRecord = Adesk::kFalse);const; Ktrue即使记录被删除仍然返回该记录/Kfalse 即使记录被删除,仍然获取空指针,并返回错误代码eWasErased
Acad::ErrorStatus getAt(const char*pEntryName,
AcDbObjectId&,
Adesk::Boolean getErasedRecord = Adesk::kFalse) const;
Boolean has(const char* ) const 是否存在该名称的记录
添加记录
Adesk::ErrorStatus add(XXXTableRecord*pRecord);
Adesk::ErrorStatus add(AcDbObjectId&recordId, XXXTableRecord* pRecord);
注意内存的分配与释放问题,new 出来的对象如果交给了数据库则不需要手动释放。
否则,一定要注意释放对象。并且注意传指针时需要保证对象不会再使用之前被析构。