C++ では、通常、次のようなコードを見て書きます。
Sample sample=new Sample();
if ( sample == NULL )
{
std::cout<<"Memory allocation failed" << std::endl;
}
しかし、C# では、これをめったに見ません: (少なくとも私はこれを見たことがありません)
Sample sample = new Sample();
if ( sample == null )
{
Console.WriteLine("Memory allocation failed\n");
}
つまり、C# では、失敗したかどうかをほとんどチェックnew
しません。なぜそうなのですか?「In C#, new never fails」と関係がありますか? C# でnew
決して失敗しないものはありますか?
失敗した場合、なぜそのような「チェック」が C# で非常にまれなのですか? について話しているのではありません。つまり、「チェック」ではなく、OutOfMemoryException
結局のところ例外です。私はコーディングスタイルについて話している。