【发布时间】:2015-08-25 06:24:55
【问题描述】:
到目前为止,我一直在使用函数指针,就像 c++ 中的这种格式。我确实时不时地有一些用途,我想知道在 c++11/14 中是否还引入了其他任何东西作为它们的替代方案。
#include <iostream>
using namespace std;
void sayHello();
void someFunction(void f());
int main() {
someFunction(sayHello);
return 0;
}
void sayHello(){
std::cout<<"\n Hello World";
}
void someFunction(void f()){
f();
}
我确实看过这个question,但无法理解与传统使用函数指针相比的任何优势。另外我想问一下,使用函数指针有什么问题(不推荐),因为我从未见过有人使用它们。或任何其他替代方案。
【问题讨论】:
-
改用 lambdas :)
-
@AndrewLavq ,有一些繁重的打印功能(虽然不是应用程序,只是演示目的),如果我使用 lambdas 会影响可读性。
标签: c++ pointers c++11 function-pointers