最終更新日時:
が更新

履歴 編集

function
<functional>

std::function::operator()(C++11)

R operator()(ArgTypes... args) const;

概要

関数を呼び出す。

効果

*thisが保持している関数ポインタまたは関数オブジェクトfに対して、INVOKE(f, std::forward<ArgTypes>(args)..., R)を行う。

戻り値

R型がvoidの場合は何も返さない。そうでなければ、関数呼び出しの戻り値を返す。

例外

関数ポインタまたは関数オブジェクトを保持していない場合、bad_function_call例外を送出する。

#include <iostream>
#include <functional>

int ident(int x)
{ return x; }

int main()
{
  std::function<int(int)> f = ident;

  // 関数呼び出し : 保持しているident()関数を呼び出す
  int result = f(1);

  std::cout << result << std::endl;
}

出力

1

バージョン

言語

  • C++11

処理系

参照