hi, There has only that error "projectdlg.cpp(198) : error C2660: 'Gecode::Space::operator new' : function does not take 3 arguments" the error line is " GenSolModel * m = new GenSolModel (temp);" Yeah,it may be so. i have to use another way ---"GenSolModel a(temp); GenSolModel *m =&a;" to instead of it. Luckily, it can run OK. For the reason of time, i will hang it for a while . I will find this bug and uncover it to the sun in my free time. Thanks for your reply.
Kayler 2009/8/27 Javier Andrés Mena Zapata <javim...@gmail.com> > Hi, > > Maybe you could send the COMPLETE error message, and copy EXACTLY the lines > that the which the compiler reports the error. It may be a compiler bug or > something similar. > > Best regards, > > 2009/8/26 Kayler Yao <ris...@gmail.com> > >> hi, >> The type of temp is Int. For the project is so large , i can't copy >> the whole codes here.But when i use another method like code lines below , >> it can run OK! >> " …… >> GenSolModel a(temp); >> GenSolModel *m =&a; >> >> DFS<GenSolModel> e(m); >> m = NULL; >> while(GenSolModel *s = e.next()) >> { >> s->print(); >> delete s; >> sum++; >> } >> …… >> " >> This way to creat an object of the class GenSolModel is a feasible way. >> But why the "New "way can't run OK. I doubt it may be the conflict error >> between "C++ new" and "'Gecode::Space::operator new",but why it can run ok >> in other project, Maybe the answer is hidden in my project. It also a puzzle >> to me. >> Who have faced the similar question ? Wish to your reply. >> If everyone can give me a suggest , i will appreciate your help. >> >> Kayler >> >> 2009/8/27 Christian Schulte <cschu...@kth.se> >> >> Hi, I think I need to see the full code to help. There must be >>> something how you call new (maybe the type of temp) that is the problem. >>> >>> >>> >>> Christian >>> >>> >>> >>> -- >>> >>> Christian Schulte, >>> www.ict.kth.se/~cschulte/<http://www.ict.kth.se/%7Ecschulte/> >>> >>> >>> >>> *From:* users-boun...@gecode.org [mailto:users-boun...@gecode.org] *On >>> Behalf Of *Kayler Yao >>> *Sent:* Wednesday, August 26, 2009 4:04 PM >>> *To:* us...@gecode.org >>> *Subject:* [gecode-users] Help -- about Gecode::Space::operator new >>> >>> >>> >>> hi, >>> >>> I had a trouble in my project when i wrote a class inheriting from >>> Class Space and run it with DFS. The error is >>> >>> >>> >>> "error C2660: 'Gecode::Space::operator new' : function does not take 3 >>> arguments"-------------------------happened in >>> >>> >>> >>> " >>> >>> GenSolModel * m = new GenSolModel >>> (temp);------------------------------------error line >>> >>> >>> DFS<GenSolModel > e(m); >>> >>> delete m; >>> >>> while (GenSolModel * s = e.next()) >>> { >>> s->print(); >>> delete s; >>> } >>> >>> " >>> >>> I have spent much time to find the reason but with no results. >>> I had written anther question class to test ,and it could run OK. I think >>> that the constructor of >>> >>> this class didn't conflict with the class Space , but why came out this >>> error. Who can give me a thought to help me to find the answer? >>> >>> Look forward to your reply! >>> >>> >>> >>> note: >>> >>> 1.VS2008 + Gecode 3.1.0 >>> >>> 2. >>> >>> class GenSolModel: public Gecode::Space >>> { >>> protected: >>> IntVarArray succ; >>> >>> public: >>> >>> GenSolModel(int data); >>> >>> GenSolModel(bool share, GenSolModel& s); >>> >>> ~GenSolModel(); >>> >>> virtual Space *copy(bool share); >>> >>> void print(void); >>> >>> }; >>> >>> Kayler >>> >> >> >> _______________________________________________ >> Gecode users mailing list >> us...@gecode.org >> https://www.gecode.org/mailman/listinfo/gecode-users >> >> > > > -- > Javier Andrés Mena Zapata > Cali - Colombia >
_______________________________________________ Gecode users mailing list us...@gecode.org https://www.gecode.org/mailman/listinfo/gecode-users