C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.41356 の関連記事表示

<< 0 >>
■41356  Re[3]: C#における値渡しと参照渡しのコーディングについて
□投稿者/ 渋木宏明(ひどり) -(2009/09/18(Fri) 13:13:09)
>
    2009/09/18(Fri) 13:44:22 編集(投稿者)
    2009/09/18(Fri) 13:42:51 編集(投稿者)
    2009/09/18(Fri) 13:41:52 編集(投稿者)

    > data.MyClass = MyClass; // Class(プロパティ)を設定。値は「参照渡し」される。
    > data.MyStruct = MyStruct; // Struct(プロパティ)を設定。値は「値渡し」される。

    微妙に違います。
    弁士さんの解説を読み直してみてください。

    > エラー結果を検出する手段として、メソッドの戻り値を使うことが一般的なようです。

    なことないです。
    標準クラスライブラリに含まれているクラス/コンポーネントの類は、エラーを例外で表現しています。

    > public bool ReadSQLInfo(MySQLInfo info)

    こんな書き方(成否を bool で返す)しません。
    ReadSQLInfo は、MySQLInfo のインスタンスを返すように設計します。

    また、これは検査例外の有無とは関係ないように思います。
    通信エラーは業務ロジック上許容できるものではないはずなので、こういう場合は SQLException は放置して、最上流でログに記録するとかの対応をとります。

    検査例外の有無なんて本質的にはどーでもいいことです。
    業務ロジック上想定される例外なら try ~ catch してしかるべき処置を行う(=Java の場合でも、結局再 throw するケース多くありませんか?)べきだし、想定外の例外なら全く触れることなく上流に処置を任せるべきです。

    >単にJavaやC++を先に学んだために、ひっかかるのかもしれませんが…。

    Java や C++ を、C 言語的な目線で習得したような印象を受けます。
記事No.41320 のレス /過去ログ71より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -