Naja, auf dem Atmega gibts halt keine STL und kein std::cout und co. Normale Eingänge/Ausgänge kannst du Klassen verwenden wie im Arduino Framework. Zu dem Button: Ein Button auf einem Mikrokontroller? Eher nicht ... Eher ein echter Button mit elektrischem Kontakt der dann wieder ein digitaler Eingang ist.

Gruß
Georg