Dynamic Arrays & Class Properties
Denis Koroskin
2korden at gmail.com
Thu Aug 28 11:47:46 PDT 2008
On Thu, 28 Aug 2008 22:22:44 +0400, Sergey Gromov <snake.scaly at gmail.com>
wrote:
> Mason Green <mason.green at gmail.com> wrote:
>> Hi,
>>
>> Anyone know how to expose dynamic array elements via class properties?
>> I would like to do something this this:
>>
>> class Foo {
>>
>> private int[] m_dummy;
>>
>> this() {
>> m_dummy ~= 19;
>> m_dummy ~= 77;
>> }
>>
>> int dummy( ??????? ) {
>> return m_dummy[x];
>> }
>> }
>>
>> void main() {
>> auto foo = new Foo();
>> Cout(foo.dummty[0]); // Print 19
>> }
>>
>> Any help would be much appreciated! The question marks are where I'm
>> stuck....
>
> class Foo {
> private int[] m_dummy;
> const int dummy() {
> return m_dummy;
> }
> }
>
> I think this is better than tons of templates.
>
First, it should be like this:
class Foo {
this()
{
m_dummy = new int[1];
m_dummy[0] = 19;
}
const(int)[] dummy() {
return m_dummy;
}
private int[] m_dummy;
}
Second, that's D2 :)
That's kinda strange, but unfortunately most of the discussion here is
about D1, not D2 :(
There is no const in D1:
const int[] test = [0, 1, 2, 3];
test[0] = 2;
writefln(test[0]); // prints 2
More information about the Digitalmars-d-learn
mailing list