ホームページ  >  記事  >  バックエンド開発  >  C++ 関数の可変長パラメーターを使用するにはどうすればよいですか?

C++ 関数の可変長パラメーターを使用するにはどうすればよいですか?

王林
王林オリジナル
2024-04-19 12:18:02899ブラウズ

C の可変パラメーター関数を使用すると、可変数のパラメーターを受け取ることができます。構文は、returntype function_name(type1 arg1, type2 arg2, ..., typen argn); です。可変長パラメーター関数を呼び出す場合は、 function_name(arg1, arg2, ..., argn); の形式を使用します。ここで、arg1 から argn は、渡される実際のパラメーターです。実際のケースで示したように、数値のリストの合計を計算する関数 sum は、va_list を使用して可変長パラメーターを走査および累積することで、動的にパラメーターを取得して計算する機能を実現します。

C++ 函数的变长参数的使用方式是什么?

C 関数の可変長パラメーター

可変パラメーターを使用すると、関数は可変数のパラメーターを受け取ることができます。 C では、... (省略記号) 構文を使用して可変長引数を指定します。

構文

returntype function_name(type1 arg1, type2 arg2, ..., typen argn);

このうち、returntype は関数 arg1, の戻り値の型です。 arg2, ..., argn は関数パラメータのリスト、... は可変長パラメータを表します。

呼び出し

可変長パラメーター関数を呼び出す場合は、次の形式を使用できます:

function_name(arg1, arg2, ..., argn);

where, arg1arg2、...、argn は、実際に関数に渡されるパラメーターです。

実践的なケース

指定された数値リストの合計を計算する関数の例を次に示します。

#include <iostream>
#include <stdarg.h>

using namespace std;

// 计算数字列表和的函数
int sum(int num, ...) {
  va_list args;
  int sum = num;

  // 获取变长参数
  va_start(args, num);

  // 遍历变长参数并累加
  while (int arg = va_arg(args, int)) {
    sum += arg;
  }

  // 清理变长参数
  va_end(args);

  return sum;
}

int main() {
  // 调用函数计算数字列表和
  cout << "数字列表和为:" << sum(1, 2, 3, 4, 5) << endl;

  return 0;
}

出力

数字列表和为:15

以上がC++ 関数の可変長パラメーターを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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