コンパイラ エラー CS1626
catch 句を含む try ブロックの本体で値を生成することはできません。
try ブロックに関連付けられている catch 句がある場合、その try ブロックでは yield ステートメントを使用できません。 このエラーを回避するには、yield ステートメントを try/catch/finally ブロックの外に移動するか、catch ブロックを削除します。
次の例では CS1626 が生成されます。
// CS1626.cs
using System.Collections;
class C : IEnumerable
{
public IEnumerator GetEnumerator()
{
try
{
yield return this; // CS1626
}
catch
{
}
finally
{
}
}
}
public class CMain
{
public static void Main() { }
}
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示