Function definitions
The elements of a function definition are as follows:
- Function storage class specifiers, which specify linkage
- Function return type specifiers, which specify the data type of a value to be returned
- Function specifiers, which specify additional properties for functions
- Function declarators, which include function identifiers as well as lists of parameters
- The function body, which is a braces-enclosed series of statements representing the actions that the function performs
- Constructor-initializers, which are used only in constructor functions declared in classes; they are described in Constructors (C++ only).
- Try blocks, which are used in class functions; they are described in try blocks (C++ only).
Function definitions take the following form:
Function definition syntax (C only)
Function definition syntax (C++ only)
Notes:
- 1 This syntax is valid only in the C++11 standard.
- 2 This syntax is valid only in the C++11 standard.
Note: When function_declarator incorporates
a trailing return type, return_type_specifer must
be
auto
. For more information about trailing return
type, see Trailing return type (C++11).