First of all, the keyword
interface
is Microsoft-specific, and only used in managed C++, so this is not part of the C++ standard.
Second,
interface
can't be used standalone, you have to write
interface class
or
interface struct
(which are equivalent).
Third, technically, you can entirely omit the
interface
keyword without changing the semantics of the code! It is just a crutch that MS invented to enforce certain properties in a class definition.
Lastly, to understand the meaning of defining interface classes, you really have to understand polymorphism and the basic concepts behind object-oriented programming. What you're asking is really the basis of object orientation, so you should try and search for a good book, online course, or tutorial on that topic before advancing. There are already a few useful links in solution 2, but they may already be too advanced for you, or too specific.
You'd better get started with the basis of object oriented programming, such as
this tutorial.