|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 smthan 于 2014-6-1 10:09 编辑 7 y; r+ e U6 O* u: j- O" b
_3 j" N- W" ?5 ^9 r; n+ w- B2 X% d
请教:# {% h) o `. s
这几天在学习您的教程《23 BodyCollector选择容器》,跟着视频做,调试没有问题,执行的时候,总是后报错,还请您指点一下:* q) p. \# p$ @) ~9 Q% ^+ x+ o
4 l) @+ u2 J1 _" X- a* \7 V
点击OK后,能输出正确的信息:" s! e6 G8 z$ ?3 n) o4 Y* e: b
9 A: n9 s8 p& [& z再之后,报错:. s2 o }2 A" `% V
1 B1 ^$ E2 ?( R
( Y4 b) j, Q1 H7 [( }( C- v
日志信息显示的错误:2 L* H4 {( e+ z# p. u* y
9 r) i" \9 z j1 j2 m+ b
主要代码:
) \( z- R9 `9 m: o8 M! D5 Xint BodySelect::apply_cb()
8 L- q* X3 \! k+ v, u" K{0 p5 m, }# `/ E# x
int errorCode = 0;9 s. ^3 p! }; _4 \4 Z6 u
try, x0 Y( x# P: I6 @+ X) d- f
{& h( |. k" M8 s4 n
PropertyList *pList = bodySelect0->GetProperties();
9 B! ?4 R3 ^# Y: J8 a* {& Q vector<TaggedObject *> vTags = pList->GetTaggedObjectVector("SelectedObjects");
* X5 n" }+ K7 h4 y4 b6 ~) o delete pList;% B8 I: P" F, G8 t J" N
pList = NULL;
; H5 j; m, L) h% f2 ?* ]- ~! k
- e! ? D) |8 `) _$ ~ Body *body;
{- h5 ]; W" {* p int allCount = 0 , iSolid = 0, iSheet = 0 ;, e- [1 g/ u9 s7 D1 |
. a' r' I6 W1 b1 E( ~+ I allCount = (int)vTags.size();
+ S0 _# E' Q4 U5 j6 v4 ` for (int i=0;i<allCount;i++)
& ^/ u" L$ U$ i4 ]. E {
5 M+ O/ ]# U8 ` body = dynamic_cast<Body *>(vTags);
( M( R% m( f5 B/ q9 F" M if (body->IsSolidBody())! Y' t8 r+ m) w, x& E3 x
iSolid++;6 d( X. ~" s. y* }7 f5 {' v E
else if(body->IsSheetBody())
8 L3 l1 ^& D6 P+ o) O5 A iSheet++;" a% t( n W) o$ {
}, K7 L: |* p; g" E
/ ~( w5 i, E7 L1 }! ]% F) I uc1601("Read select objects Finish!",1);* X# a4 b! `' z H
char chs[256]="";$ I. q3 |0 |1 s) H1 ~
* l3 U$ t5 \' `0 `6 g; ~, ?6 b* j. w7 X7 x$ k ~4 T" E3 c9 J; `
sprintf_s(chs,256,"选择了的对象的数量是:%d*实体的数量是:%d*片体的数量是:%d",allCount,iSolid,iSheet);) @6 o* _4 S+ _- _& K
uc1601(chs,1);
4 j& h. e8 a$ X7 Q- x' a' S }
6 m; f; p( p& F caTCh(exception& ex)
, z& ^ J1 X$ |7 Q& Y1 S) X, T" x {
3 ?0 ] \ y0 l6 d //---- Enter your exception handling code here -----& B$ J7 E9 k( F; m2 | @* u
errorCode = 1;
2 }* f' C( J! X( O: \ [% z& H BodySelect::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
, S/ i0 |" L3 p' A8 P }
( l3 w9 [7 i6 L8 D% l* l0 f# W, D return errorCode;* t4 y5 [" I% ?: n$ Y
}) i2 e" t5 Z# h( w2 F0 P
0 b# k9 }+ D# G0 M不知道你有遇到过类似的情况吗??
: \# a, n( @: @: `0 i. E6 | c. m0 v问题是出在哪里呢??6 A; W' i: O4 F1 H$ u7 w
也没有什么内存需要再释放的呀8 w: O8 l9 c: e5 ?& A
7 C- O+ N- v0 @# ]) C! `) R3 B
8 w# `! c) @: Q* \+ r0 c. ~ |
|