C++ C+中是否有新的函数类型表达式格式+;11?
今天我签出(2013年4月7日修改)并在“类型别名”部分的末尾看到:C++ C+中是否有新的函数类型表达式格式+;11?,c++,c++11,function-prototypes,C++,C++11,Function Prototypes,今天我签出(2013年4月7日修改)并在“类型别名”部分的末尾看到: typedef void (*PFD)(double); // C style using PF = void (*)(double); // using plus C-style type using P = [](double)->void; // using plus suffix return type 其中,lambda介绍人用于启动使用后缀样式返回类型的常规函数类型表达式。这是官方的,还
typedef void (*PFD)(double); // C style
using PF = void (*)(double); // using plus C-style type
using P = [](double)->void; // using plus suffix return type
其中,lambda介绍人用于启动使用后缀样式返回类型的常规函数类型表达式。这是官方的,还是删除了beta/愿望列表功能?如果它是官方的,它将如何为非静态成员函数工作
using P = [](double)->void;
这不是官方的。众所周知,比亚恩在常见问题解答中有点粗心
但是,以下是有效的方法:
using P1 = auto(double) -> void;
using P2 = auto(*)(double) -> void;
其中,
P1
是函数类型,P2
是函数指针类型。也许这就是他的初衷。那么Bjarne的第三个条目是利用无状态lambda=to=regular函数转换,对吗?在阅读本文之前,我做了一个实验,发现“auto(MyClass::*)(随便什么)CV->ReturnType
”可以工作。@CTMacUser:不,它不能使用
需要一个类型,[](stuff)->stuff
是一个不完整的lambda对象。是的,这就是语法,就像一个普通的成员函数指针一样,除了后面的返回类型。