ホームページ > バックエンド開発 > C++ > C++ 関数パラメータのエラー処理の練習

C++ 関数パラメータのエラー処理の練習

王林
リリース: 2024-04-19 16:15:01
オリジナル
757 人が閲覧しました

C 関数パラメーターのエラー処理では、実際に次の手法を使用できます。 例外: try-catch ブロックを使用して例外をキャッチし、エラー情報を提供します。アサーション: アサーションを使用してパラメータの有効性を確認し、失敗した場合にはプログラムを終了し、エラー メッセージを出力します。エラー コード: この関数は、エラー状態を示すエラー コードを返します。

C++ 函数参数错误处理实践

C 関数パラメータのエラー処理の実践

ソフトウェア開発では、関数パラメータのエラー処理は非常に重要であり、無効または不整合を防ぐことができます。入力により、プログラムがクラッシュしたり、予期しない動作が発生したりする可能性があります。 C には、関数の引数エラーを効率的に処理するためのさまざまな手法が用意されています。

1. 例外の使用

C は、エラー状況を処理するための Exception クラスを提供します。 try-catch ブロックを使用して、関数内の例外をキャッチできます:

void function(int n) {
  try {
    if (n < 0) throw std::invalid_argument("n must be non-negative.");

    // 函数逻辑...
  } catch (const std::invalid_argument& e) {
    std::cerr << "Error: " << e.what() << std::endl;
  }
}
ログイン後にコピー

2. アサーションを使用する

アサーションは、次の関数の有効性をチェックできます。関数パラメータ 。アサーションが失敗すると、プログラムが終了し、エラー メッセージが出力されます。

void function(int n) {
  assert(n >= 0);

  // 函数逻辑...
}
ログイン後にコピー

3. エラー コードを返す

関数は、エラー状況を示すエラー コードを返すことができます。例:

int divide(int a, int b) {
  if (b == 0) return -1;  // 错误码:除数为零

  return a / b;
}
ログイン後にコピー

実用的なケース

次に、例外を使用して関数パラメータを検証する例を示します:

// 计算圆的面积
double area_circle(double radius) {
  if (radius < 0) throw std::invalid_argument("Radius must be non-negative.");

  return M_PI * radius * radius;
}

int main() {
  try {
    double result = area_circle(-2.5);  // 触发异常
  } catch (const std::invalid_argument& e) {
    std::cerr << "Error: " << e.what() << std::endl;
  }

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

出力:

えー

以上がC++ 関数パラメータのエラー処理の練習の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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