tchen 发表于 2005-8-7 22:44:00

请教

<P>void&nbsp; CreateDh()<BR>{AcDbDatabase *pCurDb;<BR>&nbsp;pCurDb=acdbHostApplicationServices()-&gt;workingDatabase();<BR>&nbsp;AcDbBlockTable * pBlockTable;<BR>&nbsp;pCurDb-&gt;getBlockTable(pBlockTable,AcDb::kForRead);<BR>&nbsp;AcDbBlockTableRecord * pBlockTableRecord;<BR>&nbsp;pBlockTable-&gt;getAt(ACDB_MODEL_SPACE,pBlockTableRecord,AcDb::kForWrite);<BR>&nbsp;pBlockTable-&gt;close();<BR>&nbsp;AcDbObjectId&nbsp; DhId;</P>
<P>&nbsp;double x,y,z;<BR>&nbsp;int Count=Pointx.GetSize();<BR>&nbsp;for(int i=0;i&lt;Count;i++)<BR>&nbsp;{x=atof(Pointx.GetAt(i));<BR>&nbsp; y=atof(Pointy.GetAt(i));<BR>&nbsp; z=atof(PointGc.GetAt(i));<BR>AcGePoint3d&nbsp; Pt(x,y,z);<BR>&nbsp;<BR>AcDbPoint * Dh= new AcDbPoint(Pt);</P>
<P><BR>&nbsp;pBlockTableRecord-&gt;appendAcDbEntity(DhId,Dh);<BR>&nbsp;<BR>}<BR>pBlockTableRecord-&gt;close();</P>
<P>}</P>
<P>为什么我这段代码有错误 在CADA2002运行后出现问题是不是没有关闭对象但是我加入Dh-&gt;close() 语句VC编译通不过 不光是AcDbPoint&nbsp;&nbsp; AcDbText -&gt;close()也不行我看书上例子写有这些关闭对象的语句为什么我搬过来就不行 指教!!</P>

王咣生 发表于 2005-8-8 09:06:00

reply

Pointx的定义在哪里?

tchen 发表于 2005-8-8 16:24:00

<P>至于POINTX等定义都不是问题 主要是我写Dh-&gt;close()就不能通过,为什么我这句实体关闭语句错误? 如果不把实体对象关闭会有什么严重后果??</P>

zfbj 发表于 2005-8-8 22:47:00

不能通过提示什么错误?

tchen 发表于 2005-8-9 19:21:00

<P>我写了对象关闭 Dh-&gt;close()后编译出现如下错误 请斑竹看看</P>
<P>error C2065: 'Dh' : undeclared identifier<BR>error C2227: left of '-&gt;close' must point to class/struct/union</P>

zfbj 发表于 2005-8-9 22:32:00

<P>文件开头处加上#include "dbents.h"试试。</P>

tchen 发表于 2005-8-10 14:01:00

<P>加了VC6.0编译 构件ARX都通过了 没任何错误 CAD下执行后不行</P>
页: [1]
查看完整版本: 请教