c++11 - C++中如何定义一个指向函数的智能指针?

浏览:34日期:2023-05-28

问题描述

如题。定义一个内置类型比如int型的智能指针可以 shared_ptr<int>这样定义,但不知道如何定义一个指向函数的智能指针。

问题解答

回答1:

#include <stdio.h>#include <memory>typedef void (*Fn)(void);void Foo() { printf('hello world');}int main() { std::shared_ptr<Fn> ptr(new Fn(Foo)); (*ptr)(); return 0;}

PS: C++11里面有function, 所以一般不用函数指针

相关文章: