|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 smthan 于 2014-6-1 10:09 编辑 2 h0 m: g' F! x) o9 J6 ~" Z$ ^; t
5 p3 `1 s$ ]5 x6 h1 C
请教:$ g! y* ^ y0 T5 c9 N
这几天在学习您的教程《23 BodyCollector选择容器》,跟着视频做,调试没有问题,执行的时候,总是后报错,还请您指点一下:
- B+ v: Q' G1 r
W, Y1 t( J0 H2 }$ U
点击OK后,能输出正确的信息:) j# B$ m6 T- Y2 I0 S% ^
3 z% a. ]. I" N# i. Y& V4 C+ W再之后,报错:; F7 V) r( v( h2 }5 M, k9 I
: x* ?/ j3 q1 U
, O$ u* T4 P1 `! b# k: V6 E3 w
日志信息显示的错误:3 Q5 V7 D2 a4 I3 Z# T6 e
8 ~# Y, T: U6 Y& y4 r+ [, [2 [主要代码:! H5 D' q8 p$ G" T* \! l* v4 l! P/ l
int BodySelect::apply_cb()- [1 w) Z' x3 L" T7 M
{; a) p5 z: {/ ]/ g
int errorCode = 0;
5 P/ H( F$ ~$ C; K8 D try
3 S+ A% Q5 i }3 D5 x {
- P, U- |. D; G! f1 E, b PropertyList *pList = bodySelect0->GetProperties();
! H/ N8 ~! ]0 B. ?2 P2 A8 Q- L vector<TaggedObject *> vTags = pList->GetTaggedObjectVector("SelectedObjects");
/ i7 I5 H5 Y8 @# \# F& Q6 J delete pList;
4 r1 b4 k8 o2 @5 m. V pList = NULL;
1 N/ @4 t1 }9 r# J# a! h / u2 a- _' T3 t m* z
Body *body;
r8 _4 R- h9 J2 T5 K, v3 w) n int allCount = 0 , iSolid = 0, iSheet = 0 ;; A* H6 }7 m0 g
) h V3 z% _1 C2 b9 _/ y' q
allCount = (int)vTags.size();" ~( M N8 D% }% x7 U& j: _3 H
for (int i=0;i<allCount;i++)0 b! E! y0 P9 y F9 ~: z# `$ i
{
, O! A4 |& I: |9 ~: O" j body = dynamic_cast<Body *>(vTags);
, |+ g& U, a" v! _ if (body->IsSolidBody())
6 t; S% W& z, c iSolid++;& J5 h+ c# s1 m# \) o
else if(body->IsSheetBody())
/ M% Z9 u4 a4 q- h6 j" \( R iSheet++;
7 d: m4 H, U& S5 B* M. u7 g! { }! P0 r2 B/ f9 Z( l6 d; Q8 r d
8 f1 {: h" f- ?4 B uc1601("Read select objects Finish!",1);. k# u8 {& {0 V. @- N/ a
char chs[256]="";9 }$ k, x3 z% _2 z7 S0 d- |
- ?" D9 K7 J; i0 U" o J
: M2 V6 I9 _7 F; a0 u
sprintf_s(chs,256,"选择了的对象的数量是:%d*实体的数量是:%d*片体的数量是:%d",allCount,iSolid,iSheet);/ }: ?9 x8 a' |% l5 e
uc1601(chs,1);9 v" ~ o0 x8 }; n
}6 g( L# j& F b
caTCh(exception& ex)
8 m: u$ |: n( ]+ Q {9 E# e$ {1 }9 a; B" M' _
//---- Enter your exception handling code here -----. Z1 P' h) X1 |# |; i7 s; H
errorCode = 1;! j N6 E" H9 v
BodySelect::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
1 k i( K/ N1 W! p }
_- E! u, R4 ]" [$ d, `: _ return errorCode;' r4 x" q4 P0 J. ~! R. H: o
}" ?( B( T. T- f1 ^5 b
( d3 c& i! M8 r* I5 V
不知道你有遇到过类似的情况吗??
: h" p7 b8 d( ~! x/ z' W7 L* k问题是出在哪里呢?? B/ {: }. C s+ M% {. w E
也没有什么内存需要再释放的呀8 I1 ]/ |# l9 g* Y; p6 E4 ]
" c, ]* q+ T- V; k- w. W
- h9 V# H# R9 f0 E1 u! q |
|