我試圖使用List<T>
與我的自定義類,並且能夠使用像列表上的Contains()
,Find()
等方法。我想我只需要使用操作符重載==
但顯然,這樣做的一個方法是使用一個委託方法與Find()
...C# - 使用列表<T>。查找()與自定義對象
注:現在,我已經超載Equals()
方法獲取Contains()
方法工作,但我仍然無法使Find()
函數工作。
讓兩者都能工作的最佳方式是什麼?
我使用最新的C#/.NET框架版本與mono,在Linux上。
編輯:這裏是我的代碼
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;
}
}
}
,我想如何使用find()函數來搜索我的效應初探對象...
list.find("statement1"); // would return a Reponse object
你是如何調用'Find'? – SLaks 2010-12-21 01:59:24
顯示一些代碼。 – 2010-12-21 02:00:50