I'm trying to use a List<T>
with a custom class of mine, and being able to use methods like Contains()
, Find()
, etc., on the list. I thought I'd just have to overload the operator ==
but apparently, one way of doing that is to use a delegate method with the Find()
...
Note: Right now, I've overloaded the Equals()
method to get the Contains()
method to work, but I still couldn't get the Find()
function to work.
What would be the best way of getting both to work?
I'm using the latest C# /.NET framework version with mono, on linux.
edit: Here's my code
using System;
namespace GuerreDesClans
{
public class Reponse : IEquatable<Reponse>
{
public Reponse ()
{
m_statement = string.Empty;
m_pointage = 0;
}
public Reponse (string statement, int pointage)
{
m_pointage = pointage;
m_statement = statement;
}
/*
* attributs privés
*/
private string m_statement;
private int m_pointage;
/*
* properties
*/
public string Statement {
get { return m_statement; }
set { m_statement = value; }
}
public int Pointage {
get { return m_pointage; }
set { m_pointage = value; }
}
/*
* Equatable
*/
public bool Equals (Reponse other)
{
if (this.m_statement == other.m_statement)
return true;
else
return false;
}
}
}
and how I would like to search my Reponse objects using the find() function...
list.find("statement1"); // would return a Reponse object