[gecode-users] help --- how to create an object dynamically in Gecode?

Kayler Yao risoay at gmail.com
Sun Aug 30 17:56:25 CEST 2009


hi,
    Now let me talk about what i want to do. I have a lot of data,and i need
to copy some data into the variable of the " IntArgs ". The number of
variables what i want is uncertain,which is controlled by an outside
parameter. And these variables include different data.
    For instance, i have an 10*10 Array data. Now i want to copy the second
,the fifth and the sixth column of Array data into three variables of
"IntArgs". In my project, the number of  variables of "IntArgs" what i need
and which columns of Array data i want to copy are all uncertain,controlled
by parameters. So this case make me to search for an dynamical method to
create variable of the "IntArgs" . But "IntArgs" do not have a new operator
by design. So i have to change the way and create an certain number of
variables of the "IntArgs",which is larger than actual need. You know that
wasting memory is an obvious disadvantage of this way.
     whether there has an better way to resolve this problem?

Kayler



2009/8/30 Christian Schulte <cschulte at kth.se>

>  Hi,
>
>
>
> what’s wrong with creating a new array each time you need it? They are very
> fast to create (they will only allocate heap memory if the array is large
> and otherwise, creation is super-quick). I have to admit I still don’t see
> really what you mean by uncertain number.
>
>
>
> Best
>
> Christian
>
>
>
> *From:* Kayler Yao [mailto:risoay at gmail.com]
> *Sent:* Saturday, August 29, 2009 5:23 PM
> *To:* Christian Schulte
> *Cc:* users at gecode.org
> *Subject:* Re: [gecode-users] help --- how to create an object dynamically
> in Gecode
>>
>
>
> hi,
>
>    Your said about using Argument arrays are right . The purpose i use
> Argument arrays to do is also just as it should to be . What i want to do is
> that I want to use uncertain number of Argument Arrays ,so i want to  create
> Argument arrays dynamically. You said that they do not have a new operator
> by design ,so i can't use "new" way. I maybe create an certain number of
> Argument Arrays which is much more than i want ,and it may waste some
> memories. Whether there has another way to realize my thought?
>
> welcome to talk about it.
>
>
>
> Kayler.
>
> 2009/8/29 Christian Schulte <cschulte at kth.se>
>
> Hi,
>
>
>
> Argument arrays are meant for what they are called: passing arguments as is
> explained in detail in Section 4.2.2 in Modeling with Gecode. Using them for
> other purposes is a bad idea and hence they do not have a new operator by
> design!
>
>
>
> What you should do is use a different data structure and create and
> argument array just when you need it for posting a propagator or branching.
>
>
>
> Christian
>
>
>
> *From:* users-bounces at gecode.org [mailto:users-bounces at gecode.org] *On
> Behalf Of *Kayler Yao
> *Sent:* Saturday, August 29, 2009 5:20 AM
> *To:* users at gecode.org
> *Subject:* Re: [gecode-users] help --- how to create an object dynamically
> in Gecode?
>
>
>
> hi,
>
>   And i find that "Gecode::Support::DynamicArray< T, A > Class Template"
> maybe can realize it. But i did it  unsuccessfully.
>
> Who can give me right answer.
>
>
>
> Kayler
>
> 2009/8/29 Kayler Yao <risoay at gmail.com>
>
> hi,
>
>     I want to create an object of IntArgs in my program dynamically. For
> instance " IntArgs *pt = new IntArgs(4); -----create an object of IntArgs
> with four elements" or
>
> "IntArgs *pt = new IntArgs [10];------create an array with 10 object of
> IntArgs." They all be compiled with errors. And i haven't seen the examples
> of create object dynamically in Gecode. And I want to know whether the
> Gecode support to create object of Gecode class ? And how ?
>
> Look forward to your reply!
>
>
>
> Kayler
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ps.uni-sb.de/pipermail/users/attachments/20090830/b24cf019/attachment.htm>


More information about the gecode-users mailing list