The only problem about this is:

class Fruit
{
  class Seed {
    void SetFruit(Fruit fruit)
    {
      this.outer = fruit;
    }
  }
}

class Apple: Fruit
{
  void AppleOnlyMethod(){ ... }

  class AppleSeed: Fruit.Seed {
    void DoSomething()
    {
      AppleOnlyMethod();
    }
  }

  auto GetNewSeed() { return new AppleSeed(); }
}

auto apple = new Apple();
auto seed = apple.GetNewSeed();
seed.SetFruit(new Fruit());
seed.DoSomething(); //what happens here?

Kind Regards
Benjamin Thaut


Reply via email to