c++ - 是什么导致 std::bad_function_call?

标签 c++ exception lambda c++11

我见过 few questions指的是std::bad_function_call exception ,但无法通过谷歌搜索找到导致此异常的原因。

什么样的行为应该导致这个异常?你能给我一些没有其他语义问题的最小例子吗?

最佳答案

当然——最简单的方法是尝试调用一个空的 std::function

int main() {
    std::function<int()> intfunc;
    int x = intfunc(); // BAD
}

关于c++ - 是什么导致 std::bad_function_call?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5567287/

相关文章:

c++ - 确保全局记录器对象的生命周期比其他全局对象长

exception - MSMQ 异步异常行为 - .NET 4.0 与 .NET 2.0

java - Mockito 验证特定的 lambda 是否已作为 mock 方法中的参数传递

c++ - Windows中的HeapValidate有什么作用?

c++ - 启动时未应用构造函数值

c++ - 多重继承导致的“无法访问的直接基础”

Java异常处理

python - 内置 Numpy 异常?

c# - 将 `unsafe` 关键字应用于 C# 中的 lambda 表达式

c# - 将 LINQ to Entities 分成多个部分