c++ lambda表达式的问题
PHP中文网
PHP中文网 2017-04-17 15:06:19
0
2
517

一个函数指针名称申明
typedef void* (*SFThreadFuncPtr)(void* pUser);
[](void* _This) -> void*{}
为什么这个lambda没办法传给这个SFThreadFuncPtr定义的变量?

PHP中文网
PHP中文网

认证0级讲师

Antworte allen(2)
Ty80

[](void _This) -> void {}
[](void _This) -> void{}
编码~~

刘奇

lambda表达式的类型是一个闭包,不能直接赋值给指针类型,可以使用std::functionlambda表达式进行包装,然后调用。

#include <functional>

std::function<void* (void*)> fun;

fun = [](void* _This) -> void* { return NULL;};

fun(NULL);
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage