c++

c++中如何实现函数的invoke

小樊
91
2024-08-16 10:47:37
栏目: 编程语言

在C++中,可以利用函数指针、函数对象或者lambda表达式来实现函数的invoke操作。以下是三种实现方法的示例:

  1. 函数指针:
#include <iostream>

void function() {
    std::cout << "Function invoked" << std::endl;
}

int main() {
    void (*funcPtr)() = function;
    funcPtr();
    
    return 0;
}
  1. 函数对象:
#include <iostream>

class FunctionObject {
public:
    void operator()() {
        std::cout << "Function object invoked" << std::endl;
    }
};

int main() {
    FunctionObject funcObj;
    funcObj();
    
    return 0;
}
  1. Lambda表达式:
#include <iostream>

int main() {
    auto lambda = []() {
        std::cout << "Lambda invoked" << std::endl;
    };
    
    lambda();
    
    return 0;
}

这三种方法都可以实现函数的invoke操作,具体选择哪种方法取决于实际需求和使用场景。

0
看了该问题的人还看了