int method1() {
return 0;
}
decltype(method1) method2() {
return method1;
}
我编译我的代码,得到一个错误:'method2'声明为返回函数的函数,然后将返回类型更改为函数指针,它起作用了,我只想知道为什么会这样。
decltype(method1) *method2() {
return method1;
}
在C ++中,无法返回函数和数组。这是语言的设计方式。
您必须返回指向它们的指针或引用。您已经尝试过使用指针,它可以工作。返回参考的以下内容也应起作用:
decltype(method1)& method2() {
return method1;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句