Function definitions

The elements of a function definition are as follows:

Function definitions take the following form:

Function definition syntax (C only)


1 ? storage_class_specifier? function_specifier ? return_type_specifier  function_declarator  {  function body  }

Function definition syntax (C++ only)


1 ? storage_class_specifier? function_specifier  return_type_specifier  function_declarator
1 ? : constructor-initializer { function body }
1 try-block
1  = default;(1)
1  = delete;(2)
Notes:
  • 1 This syntax is valid only in the C++11 standard.
  • 2 This syntax is valid only in the C++11 standard.
C++11
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).
C++11