Apart from including curses.h, you don't seem to be doing any actual curses calls. A curses program would use the curses I/O routines like mvprintw, wattron, etc.
Here's a short C program that shows some of the things you can do with curses
#include <curses.h>
int main()
{
initscr();
box(stdscr, 0, 0);
WINDOW *w1 = newwin(10, 60, 4, 10);
box(w1, 0, 0);
mvwprintw(w1, 1, 5, "Hello World");
wnoutrefresh(stdscr);
wnoutrefresh(w1);
doupdate();
getch();
mvwin(w1, 8, 20);
touchline(stdscr, 4, 10);
wnoutrefresh(stdscr);
wnoutrefresh(w1);
doupdate();
getch();
endwin();
return 0;
}
compile with
gcc example.c -lncurses -o example
There are C++ bindings for curses, but I'm not sure how complete or how usable they are. You should be able to google around for documents and examples of the C++ bindings, and decide if it meets your needs or if you should stick with the C interface.