クラスmembers(value)の1つに条件(pred)が成立したときに、オブジェクト(mycapsule、他の多くのメンバーがあります)のリストを更新したいと思います。私が何かを変更するたびに、別のことが失敗します。私はC#の初心者であり、本当に混乱しています。誰かが私のコードを修正できますか:最良の状態では、このエラーが発生するだけですが、コードに多くのものが欠けていると思います
The type or namespace name `T' could not be found. Are you missing a using directive or an assembly reference?
これが私のコードです
using System;
using System.Collections.Generic ;
namespace test
{
class MainClass
{
public static List< mycapsule<int,double> > sample= new List< mycapsule<int,double>>();
public static void Main (string[] args)
{
sample.Add(new mycapsule<int,double> {id=1 , value= 1.2});
update(pred, 12.3);
}
public static bool pred(double x)
{
if (x==2.5) return true;
return false;
}
public class mycapsule<KT, T>
{
public KT id {get ; set; }
public T value { get ; set; }
public int p; // and more
}
public bool update(Func<T, bool> predicate, T i)
{
foreach (var x in sample.FindAll(item => predicate(JustValue(item))) )
{
x.value = i ;
}
return true ;
}
public T JustValue(mycapsule<int,T> i)
{
return i.value;
}
}
}