Кнопка. ClickEvent является нестатическим внутренним классом, таким образом, экземпляр этого класса может только существовать включенный в экземпляр Кнопки.
В Вашем втором примере кода у Вас есть экземпляр Кнопки, и Вы создаете экземпляр ClickEvent, включенного в этот экземпляр Кнопки...
That's a linking error. Are you linking to the curses library correctly?
There are two steps involved in using a library in C.
#include
the relevant header files from your source files. This is so your code knows what signatures of the library functions are. So you're doing this correctly.-lncurses
to the compile line should do it. Here's an explanation of linking.