这段代码合法吗?它可以编译,但我想知道返回值会发生什么。未定义的行为?
class Foo {
public:
void test1() {
}
auto test() -> decltype(test1()) {
return test1(); //<---return void here!
}
};
最佳答案
该代码是合法的。 auto
推导出 void
并且 void
函数可以返回另一个 void
函数。 void
函数甚至可以
return static_cast<void>("I'm a void");
关于c++ - 自动返回类型匹配 void,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59542181/