c++ - 函数引用

标签 c++

所以我只是在处理函数指针,我记得你可以这样做:

void Foo()
{
}

int main()
{
    void(& func)() = Foo;

    func(); //::Foo();
}

在这种情况下,引用引用有效对象(除非它们被滥用)或函数的明显优势是。

明显的缺点是您不能存储引用数组,也不能将它们用于成员函数指针(至少据我所知)。

我的问题:是否有人使用它们(即函数引用不是函数指针),如果是,在什么情况下有你觉得它们有用吗?

我唯一能看到它们有用的地方是在使用条件编译时绑定(bind)对某个函数的引用。

最佳答案

我之前使用过它们,通过将它们传递给构造函数,以类似于策略模式的方式向类添加自定义

关于c++ - 函数引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/480248/

上一篇:网页未找到

下一篇:c++ - RAII 与异常

相关文章:

C++ 对图形的像素级控制

c++ - 在六角图中,如何将3D坐标存储为1D容器的索引/如何使用3D坐标从1D容器中检索元素?

c++ - 在 dll 边界上公开 std::vector - 编译器独立性的最佳实践

c++ - IXMLDOMElement Ptr p Element->text = "..."会失败吗?

c++ - 如何将网络摄像机的图像显示为实时视频,同时在 Qt 中进行一些音频处理?

c++ - Visual Studio 2010 + 视觉辅助 C++ : Are there any automated ways to create getters and setters?

C++ new int[0]——它会分配内存吗?

c# - C++ 的 VARIANT 数据类型转换为 C#

c++ - 模拟退火算法

c++ - 红帽 : using <atomic> compiles fine but linker can't find __atomic_store_16; what library?