我想创建一个像这样的函数指针:
void(*function_pointer)()noexcept;
但是,这不起作用。似乎函数声明中的异常说明符无效。必须有办法做到这一点。 右
这与一个与此不同的问题有关。在这里,我问如何使用noexcept说明符创建一个函数指针。在“函数typedef中的noexcept说明符”这个问题中没有被问到或回答过。
答案 0 :(得分:7)
[except.spec] / 2:
异常规范只能出现在函数声明符中 对于函数类型,指向函数类型的指针,对函数的引用 type或指向成员函数类型的指针,它是顶级类型 声明或定义,或者出现的类型 函数声明符中的参数或返回类型。
所以你的宣言确实是格式良好的,而Clang compiles it。
据推测,您的编译器不是最新的。