Интерфейс описывает, что делает класс, а реализация — как он это делает. Обычно интерфейс определяется в заголовочном файле (.h), а реализация — в файле исходного кода (.cpp).

Заголовочный файл (интерфейс)

// MyClass.h
class MyClass {
public:
    MyClass();
    void myFunction();
private:
    int data;
};

Файл исходного кода (реализация)

// MyClass.cpp
#include "MyClass.h"
 
MyClass::MyClass() : data(0) {}
 
void MyClass::myFunction() {
    // Реализация функции
}

Также по интерфейсу и реализации см. пример из Пример аддитивности с классами.