ホームページ > バックエンド開発 > C++ > DbDataRecords からの潜在的な Null 値を処理する値型関数のジェネリック パラメーターとして Null 許容型を使用するにはどうすればよいですか?

DbDataRecords からの潜在的な Null 値を処理する値型関数のジェネリック パラメーターとして Null 許容型を使用するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-05 12:45:47
オリジナル
478 人が閲覧しました

How Can Nullable Types Be Used as Generic Parameters for Value-Type Functions Handling Potential Null Values from DbDataRecords?

値型関数のジェネリック パラメーターとして Null 許容型を許可する

Null 値の可能性がある DbDataRecords から値を取得する必要性を考慮してください。 Null 許容型をジェネリック パラメーターとして使用しようとすると、最初は、Null 許容型は参照型である必要があることを示すエラーが発生しました。その後、制約を構造体に変更すると、null 許容型は null 非許容である必要があるという別のエラーが発生しました。

この問題に対処するには、戻り値の型を Nullable に変更するのが解決策です。そして、null 非許容パラメータを使用して関数を呼び出します。改訂されたコードは次のとおりです。

static void Main(string[] args)
{
    int? i = GetValueOrNull<int>(null, string.Empty);
}

public static Nullable<T> GetValueOrNull<T>(DbDataRecord reader, string columnName) where T : struct
{
    object columnValue = reader[columnName];

    if (!(columnValue is DBNull))
        return (T)columnValue;

    return null;
}
ログイン後にコピー

DbDataRecords を伴う操作中に null 値が使用される可能性を考慮しながら、null 許容型は値の型を処理する関数の汎用パラメーターとして機能できるようになりました。

以上がDbDataRecords からの潜在的な Null 値を処理する値型関数のジェネリック パラメーターとして Null 許容型を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート