Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

C# C# Objects Methods Return Values

error CS1001

when I compile this code, I got error below.

Map.cs(14,23): error CS0246: The type or namespace name Point' could not be found. Are you missingTreehoseDefense' using directive?

I checked all of this code, but I still can't find the bug, so if someone know the solution, please help me!

★Here is Map.cs

namespace TreehouseDefense { class Map { public readonly int Width; public readonly int Height;

public Map(int width, int height)
 {
   Width = width;
   Height = height;
 }

public bool OnMap(Point, point)
{
  return point.x >= 0 && point.x < width && point.y >= 0 && 
         point.y < height;
}

} }

★Here is Game.cs

using System;

namespace TreehouseDefense { class Game { public static void Main() { Map map = new Map(8, 5);

        Point point = new Point(4, 2);
        bool isOnMap = map.OnMap(point);
        Console.WriteLine(isOnMap);

        point = new Point(8, 5);
        isOnMap = map.OnMap(point);
        Console.WriteLine(isOnMap);
    }
}

}

1 Answer

Steven Parker
Steven Parker
215,984 Points

It looks like you manged to get a copy of the same damaged code as Denzel Archie. Here are the issues I pointed out to him in Map.cs:

  • in the declaration of OnMap there's a stray comma between the parameter type and the name
  • the fields inside point are "X" and "Y" (upper case) but the code has them in lower case
  • the local field "Width" (capital "W") is spelled in the code as "width" (lower case "w")
  • the local field "Height" (capital "H") is spelled in the code as "height" (lower case "h")

To enable a more thorough analysis and specific answer, make a snapshot of your workspace and post the link to it here.