Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialMartin Englert
5,509 Pointspublic override string Equals(object obj1 , object obj2){} won't compile. Why?
using System; namespace Treehouse.CodeChallenges { public class VocabularyWord { public string Word { get; private set; }
public VocabularyWord(string word)
{
Word = word;
}
public override string ToString()
{
return Word;
}
public overide bool Equals(object obj1,object obj2)
{
if(obj1.Word == obj2.Word)
{
return true;
}
else
{
return false;
}
}
}
}
Is there something wrong with obj1.Word and obj2.Word?
using System;
namespace Treehouse.CodeChallenges
{
public class VocabularyWord
{
public string Word { get; private set; }
public VocabularyWord(string word)
{
Word = word;
}
public override string ToString()
{
return Word;
}
public overide bool Equals(object obj1,object obj2)
{
if(obj1.Word == obj2.Word)
{
return true;
}
else
{
return false;
}
}
}
}
1 Answer
Steven Parker
231,198 PointsThere are a few issues:
- as Patrik pointed out, "override" has 2 "r"s
- the override must have the same signature as the original function (which takes just one argument)
- an "object" doesn't have a "Word" property, so you'll need to cast it to the right type
- you still need to accommodate the possibility of the argument being null
Patrik Horváth
11,110 PointsPatrik Horváth
11,110 Pointsre you sure its "overide" ? i think its "override"