C++标准里的这句,其实有点误导,前半句让人以为是会返回随机值,后半句定性为UB: Flowing off the end of a function is equivalent to a return with no value; this results in undefined behavior in a value-returning function.
【 在 iconquer 的大作中提到: 】 : 文心的回答: : 您的问题涉及到了C++的未定义行为(Undefined Behavior)以及GCC编译器在Release版本下的优化问题。 : 首先,C++标准规定,如果一个函数没有显式的返回语句,且函数的返回类型不是void,那么这个函数的返回值是未定义的。未定义行为是一种编译器不会进行任何错误检查的特殊行为,它可能会导致任何结果,包括看似合理的结果。 : ................... -- 修改:z16166 FROM 221.218.160.* FROM 221.218.160.*