C++ 函数库 - operator()



描述

它使用参数 args 调用存储的可调用函数目标。

声明

以下是 std::function::function::operator() 的声明

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

C++11

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

参数

args − 传递给存储的可调用函数目标的参数。

返回值

如果 R 为 void,则返回 none。否则返回调用存储的可调用对象的返回值。

异常

noexcept: 它不会抛出任何异常。

示例

以下为 std::function::operator() 的示例。

#include <iostream>
#include <functional>
 
void call(std::function<int()> f) {
   std::cout << f() << '\n';
}

int normal_function() {
   return 50;
}

int main() {
   int n = 4;
   std::function<int()> f = [&n](){ return n; };
   call(f);

   n = 5;
   call(f);

   f = normal_function;
   call(f);
}

输出应如下所示:

4
5
50
functional.htm
广告