ホームページ  >  記事  >  バックエンド開発  >  C++関数のデフォルトパラメータと可変パラメータの詳細説明

C++関数のデフォルトパラメータと可変パラメータの詳細説明

WBOY
WBOYオリジナル
2024-04-19 16:18:02732ブラウズ

C デフォルト パラメーターでは、関数パラメーターのデフォルト値を設定できますが、可変引数パラメーターでは、関数に任意の数のパラメーターを指定できます。具体的には: デフォルト パラメーター: 関数が宣言されるときにパラメーターのデフォルト値を指定でき、呼び出し時に値が指定されない場合はデフォルト値を使用できます。変数パラメーター:... を使用して、関数が任意の数のパラメーターを受け入れ、va_arg を通じてパラメーターを取得できることを示します。

C++ 函数的默认参数和可变参数详解

#C 関数のデフォルト パラメータと可変パラメータの詳細な説明

デフォルト パラメータ

デフォルト パラメータを使用すると、関数はデフォルト値として宣言されています。このようにして、関数が呼び出されたときに、パラメーターに値が指定されていない場合は、デフォルト値が使用されます。

構文:

return_type function_name(parameter_type1 parameter_name1 = default_value1,
                       parameter_type2 parameter_name2 = default_value2,
                       ...);

実際のケース:

デフォルトの max_size パラメータを持つ次の関数を考えてみましょう。

int get_max_size(int max_size = 100) {
  // 函数体
  return max_size;
}

この関数は次のように呼び出すことができます。

int size1 = get_max_size(); // 使用默认值 100
int size2 = get_max_size(50); // 使用给定值 50

可変個のパラメーター

可変個のパラメーターを使用すると、関数に任意の数のパラメーターを指定できます。関数宣言では、変数パラメータは ... を使用して表されます。

構文:

return_type function_name(parameter_type1 parameter_name1,
                       parameter_type2 parameter_name2,
                       ...,
                       parameter_typeN ...parameter_nameN);

実際の例:

任意の数の数値の合計を計算する次の関数を考えてみましょう:

int sum(int num, ...) {
  int sum = num;
  
  va_list args;
  va_start(args, num);
  
  while (true) {
    int n = va_arg(args, int);  // 获取下一个参数
    if (n == 0) {
      break;
    }
    sum += n;
  }
  
  va_end(args);
  return sum;
}

This 関数は次のように呼び出すことができます:

int sum1 = sum(1, 2, 3, 4, 5); // 求和 1 + 2 + 3 + 4 + 5 = 15
int sum2 = sum(10, 20, 30, 0); // 求和 10 + 20 + 30 = 60

以上がC++関数のデフォルトパラメータと可変パラメータの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。