c++11 - C++中如何定义一个指向函数的智能指针?
大家讲道理
大家讲道理 2017-04-17 13:07:49
0
1
935

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

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(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, 所以一般不用函数指针

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal