This is from the
:
namespace std
{
extern istream cin; ///< Linked to standard input
extern ostream cout;
...
>
extern
is used to refer to a variable defined in a different compilation unit (for now, you can think of a compilation unit as a .cpp file). The statements in your example declare rather than define cin
and cout
. It is telling the compiler that the definition of these objects is found in another compilation unit (where they are not declared as extern
).