istream & operator >>( istream & input, Registration & R )
istream&
means that object of type istream
will be returned by reference.
operator>>
is the identifier of the function, it is specifically named so that it overrides the default functionality of the >>
operator (similar to how you can override the default functionality the + operator, or operator+() as a "binary" (meaning two) operator (meaning it involves two arguments).
(...)
everything within the parentheses are the parameters of the function, they are the data that will be given to the function when it is called to be run.
istream& input
indicates that a variable called "input" of type istream
will be passed in by reference, meaning that usage of the input variable will refer to the original variable passed in from the location in which it was called and NOT a copy (see: passing by reference and passing by value).
Registration& R
indicates that a variable called "R" of type Registration
will be passed in by reference (see the definition above). The type Registration
seems to be derived from some method for defining a type, such as from a class
or a struct
.
If you're looking for more information on what an object of type istream
is, how it's defined, or what "it does," (along with anything else I mentioned here) I recommend running a search and looking through the wealth of free, available information online.