Why are there several missing references to "function prototypes" in C ++ 11? Of course they do not exist in C ++

The C ++ 11 standard makes a couple of passing references to "function prototypes."

In any definitions, there are no corresponding signs, but in such random places as:

  • "scope prototype scope" in [C++11: 3.3.4](the definition of which actually allows him to talk about "function declarations");
  • an editorial description of the proposals for determining the type of library in [C++11: 17.5.1.4/1], footnote 175(which appears to be related to C functionality);
  • [C++11: 20.9.4.3/6], which describes the hypothetical template <T> typename add_rvalue_reference<T>::type create();as a "prototype function."
  • same thing in [C++11: 20.9.6/4];
  • An application [C++11: C.1.7]that talks about C declarators: "Function declarations using the C partial declaration style must be filled in to become full prototype declarations, and then" Justification: Prototypes are necessary for security. "

... and what is he.

Of course, we are defined by the terminology "declaration" / "definition", and since the C ++ standard does not use the terminology "prototype" in its basic definitions, these are just typos / inconsistencies introduced as some editors are familiar with the terminology C?

Or is there some subtle meaning that I am missing?

+4
source share
1 answer

. , "prototype" , "" .

  • , §3.3.4/1 " " " ".
  • §17.5.1.4 ++, , , , "" .
  • 175 , C, , , , C (.. "prototype", , , , ++).
  • , "prototype" §20.9.6/4 §20.9.4.3/6 , "" .
  • C.1.7 C ++, C , ++, "prototype" .

"prototype" ( ), ISO 9899: 1999 ( TC 3) ++, "prototype" , ++ .

+4

All Articles