Hi, if you cant give us the code we cant help.
Actually, this is the C++ new operator (just defined for this class). So there will be a bug somewhere in your program, almost 100% sure. Christian -- Christian Schulte, www.ict.kth.se/~cschulte/ From: users-boun...@gecode.org [mailto:users-boun...@gecode.org] On Behalf Of Kayler Yao Sent: Thursday, August 27, 2009 9:51 AM To: Javier Andrés Mena Zapata Cc: us...@gecode.org Subject: Re: [gecode-users] Help -- about Gecode::Space::operator new 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