class versus struct
You might have seen a different way of declaring an object, using the class keyword, instead of struct, as shown in the following code:
class Player // we used class here instead of struct!
{
string name;
//
};The class and struct
keywords in C++ are almost identical. There is only one difference between class and struct, and it is that the data members inside a struct keyword will be declared public by default, while in a class keyword the data members inside the class will be declared private by default. (This is why I introduced objects using struct; I didn't want to put public inexplicably as the first line of class.)
In general, struct is preferred for simple types that don't use encapsulation, don't have many member functions, and must be backward compatible with C. Classes are used almost everywhere else.
From now on, let's use the class keyword instead of struct.