[an error occurred while processing this directive]
|
Выдержка из стандарта ISO/IEC 14882:2003(E)}:
A return statement without an expression can be used only in functions that do not return a value, that is, a
function with the return type void, a constructor (12.1), or a destructor (12.4). A return statement with an
expression of non-void type can be used only in functions returning a value; the value of the expression is
returned to the caller of the function. The expression is implicitly converted to the return type of the function
in which it appears. A return statement can involve the construction and copy of a temporary object
(12.2). 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.
3 A return statement with an expression of type “cv void” can be used only in functions with a return type
of cv void; the expression is evaluated just before the function returns to its caller.