I wanted to write shell extensions for windows in plain C++, but then I got confused by the keyword interface. In many articles I read that I can create interfaces in C++ by writing classes containing only virtual methods without any code. For example:
class IIsThisAnInterface_QuestionMark {
virtual MyMethod (
int firstParameter,
double secondParameter) = 0;
virtual AnotherMethod (
wchar_t *firstParameter) = 0;
}
But the author of this article defined interfaces by using the interface
keyword. So my question is: How to correctly define interfaces in C++? (Becuase I grew up in C#'s world, I know interfaces as constructs specifying methods for classes that are implementing these interfaces.)