几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】smart Pointer Issue (http://www.dimcax.com/hust/showthread.php?t=18616)

yang686526 2009-05-07 04:06 PM

【转帖】smart Pointer Issue
 
smart pointer issue
smart pointer issue
i have this in a loop:
i have this in a for loop:
// we must create a text entity now..
oddbtextptr ptext = oddbtext::createobject();
// add to parent block
pblock->appendoddbentity( ptext );
// set text properties
ptext->setposition( odgepoint3d( pserror->x, pserror->y, pserror->z ) );
ptext->setheight( psmarker->dscale );
ptext->setwidthfactor( 1.0 );
ptext->setlayer( idlayer );
strtext = formaterrortext( psmarker, pserror, getdecimalplaces() );
ptext->settextstring( (odstring)strtext );
but at the end of the for loop execution i get an error which takes me here:
void release()
{
if (m_pobject)
{
m_pobject->release();
m_pobject = 0;
}
}
it stops on the m_pobject->release() call...
help
this is the call stack:
vertcheck.exe!oddbfontservices::loadstylerec(odgit extstyle & style={...}, odrxobject * pdb=0x034728e0) line 62 + 0x15 bytes c++
vertcheck.exe!odgitextstyle::loadstylerec(odrxobje ct * pdb=0x034728e0) line 50 c++
vertcheck.exe!gifromdbtextstyle(const oddbtextstyletablerecord * pstyle=0x0355a300, odgitextstyle & gistyle={...}) line 117 c++
vertcheck.exe!gifromdbtextstyle(oddbobjectid styleid={...}, odgitextstyle & gistyle={...}) line 104 + 0x12 bytes c++
vertcheck.exe!oddbtext::adjustalignment(oddbdataba se * pdb=0x034728e0) line 1043 + 0x21 bytes c++
vertcheck.exe!oddbtext::subclose() line 1000 c++
vertcheck.exe!oddbobject::downgradeopen() line 799 c++
vertcheck.exe!oddbobject::release() line 832 c++
last edited by andrew.truckle@cartosurveys.co.uk; 12th june 2008 at 06:46 amfff">.
i have fixed it. i was using two different dwg service elements.
now that i have one as a member variable with scope for the life of the dialogue, it is working.


所有的时间均为北京时间。 现在的时间是 10:04 PM.