スタックから値のすべての出現を削除する必要があります。 これは私のコードですが、何とか私のwhile文に問題があります。C#でRemoveAllメソッドを作成するにはどうすればよいですか?
pTmp.Next.Next
の割り当てられた値がnull
かもしれないpTmp.Next = pTmp.Next.Next;
while (pTmp.Next != null)
pTmp
であるので、いくつかのテストケースでは、それは、while文を強調し、私に未処理の例外「System.NullReferenceException」ラインで
public bool RemoveAll(T value)
{
if (Count == 0)
return false;
if (Count == 1)
{
if (mTop.Data.Equals(value))
{
mTop = mTop.Next;
return true;
}
}
else
{
OurListNode<T> pTmp = mTop;
while (pTmp.Next != null)
{
if (pTmp.Next.Data.Equals(value))
{
pTmp.Next = pTmp.Next.Next;
}
pTmp = pTmp.Next;
}
return true;
}
return false;
}
のためにそれをチェックし、それがwhile文を強調してくれ –