Umm.. A shot in the dark?

void main(){
   struct SomeStruct{
      int* p;
      void aa(int a){
        *p = a;
      }
   }
   class SomeClass{
      int a;
      SomeStruct foo(){
         SomeStruct m;
         m.g = &a;
         return m;
      }
   }
   SomeClass inst = new SomeClass;
   inst.foo.aa = 20;
   assert(inst.a == 20);
}

A Bothe wrote:
> Hey guys,
> I got a problem with the following code:
> 
> void main()
> {
>       struct SomeStruct
>       {
>               int aa;
>       }
>       
>       class SomeClass
>       {
>               int a;
>               
>               SomeStruct foo()
>               {
>                       SomeStruct m;
>                       m.aa=a;
>                       return m;
>               }
>       }
>       
>       SomeClass inst=new SomeClass();
>       inst.foo.aa=20;
>       
>       assert(inst.a==20);
> }
> 
> 
> How can I make D set the member variable 'a' of SomeClass via this 
> construction to another value?
> And what's with using "ref SomeStruct foo() {}"?
> 
> Thanks in advance!
> 
> ------------------------------------------------------------------------------
> PS: Check out my D-IDE at http://www.alexanderbothe.com/?id=27

Reply via email to