How do i declare a method that returns a doublepointer to a subclass, outside the Class-definition ?

That is, as of now I have
Code:
Class House
{
     ...
     ...
     Class Room
     {
         ...
      }

      Room** myfunction(args)
     {
        Room **foo;
        ...
       return Room;
  }
}
I would like to be able to move the myfunction outside the class-definition as usual; according to
Code:
Room** House::myfunction(args)
{
     Room **foo
     ...
     return foo;
}
But the compiler complains.

How do you write the declarations when it is not some of the traditional return types as void, int, float etc. ?